PHPはファイル名によってスライドショー/メディアプレーヤーを作る

私は厄介なコードを投稿して申し訳ありません! (しかし、私はPHPを書くのはひどいです(学習を始めたばかりです)。もっと勉強する必要がありますが、現時点ではこのスクリプトが必要なので、私のアートワークを紹介する必要があります。それを訂正するのを助けることができますか?

基本的には、.txtファイルから画像ファイル名を取得しています。 txtファイルは次のように設定されています:

1 | imagefilename1.jpg

2 | imagefilename2.jpg

以下のコードの考え方は、ファイルに応じて要素を変更することです。たとえば、ファイルが.movファイルの場合、ビデオプレーヤー(vimeoのビデオストリーム)が読み込まれます。画像ファイルの場合は、スライドショーが表示されます。

<?php

$photos=file("photos.txt");
$img = array('jpg', 'png', 'gif');
$vid = array('swf', 'mp4', 'mov', 'mpg', 'flv');
foreach($photos as $image){
$item=explode("|",$image);

$ext = explode(".", $image);
if(in_array($ext[1], $img))
{'<div id='thejqueryslider'><div class='slider'> </div></div>'}
 elseif(in_array($ext[1], $vid))
 {'<iframe src='$photo' width='800' height='450' frameborder='0' webkitAllowFullScreen allowFullScreen></iframe>'}

 ?>
0

1 答え

明白なエラーの1つは、出力する場所に echo ステートメントを追加することを忘れてしまったことです。また、出力しているHTMLのまわりに単一のものの代わりに二重引用符を使用する必要があります。そうでなければ、その内部の一重引用符で文字列を終了し、構文エラーを引き起こします。 echoステートメントの最後にセミコロンを入れ、コードを動かす必要があります。

if(in_array($ext[1], $img))
{ echo "<div id='thejqueryslider'><div class='slider'> </div></div>"; }
 elseif(in_array($ext[1], $vid))
 { echo "<iframe src='$photo' width='800' height='450' frameborder='0' webkitAllowFullScreen allowFullScreen></iframe>"; }

EDIT: You also have an unmatched curly bracket opened after the foreach, you'll probably want to close it after the echo statements.

ANOTHER EDIT: You are using the variable $photo which is not defined. Did you mean $item[1]?

1
追加された
助けてくれてありがとう!残念ながら、私はコードで$ photoを一切定義していないので($ photoは私の以前のスクリプトの作業スライドショーからのものです)、うまくいきません...
追加された 著者 Jess,
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com