PHP根据文件名制作幻灯片/媒体播放器

时间:2011-10-28 04:01:03

标签: php jquery arrays echo

我很抱歉发布一个狡猾的代码! :(但我写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'><img src='images/work/$photo' alt='' /> </div></div>'}
 elseif(in_array($ext[1], $vid))
 {'<iframe src='$photo' width='800' height='450' frameborder='0' webkitAllowFullScreen allowFullScreen></iframe>'}

 ?>

1 个答案:

答案 0 :(得分:1)

一个明显的错误是您忘记在要输出内容的地方添加echo语句。您还应该在输出的HTML周围使用双引号而不是单引号,否则其中的单引号会终止字符串并导致语法错误。在echo语句的末尾用分号完成,你的代码应该工作。

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

编辑:您在foreach之后还打开了无法匹配的花括号,您可能希望在echo语句后关闭它。

另一个编辑:您正在使用未定义的变量$photo。您的意思是$item[1]吗?