PHP包括('');不显示/运行链接的PHP

时间:2014-05-08 14:46:30

标签: php sorting include

有人可以指出为什么这不起作用?我有这个包括:

<?php include ('assets/images/Gallery/index.php'); ?>

其中包含PHP来运行/显示:

<?php
  $images = glob('*.{gif,png,jpg,jpeg}', GLOB_BRACE);
  $num_of_files = 999999999;
  foreach($images as $image)
   {
     $num_of_files--;

     if($num_of_files > -1)
       echo "<li class='port2'><div class='wrap'><a href="."'".$image."'"." class='thickbox' rel='g'><img src="."'".$image."'"."><div class='mask'><span></span></div></a></div></li>" ;
     else
       break;
   }
?>

我用不同的名字和新文件并排尝试了它们,我得到的只是一个空白屏幕。或者,有人可以告诉我正确的方法将第二个排序脚本指向我选择的目录,而不是将其包含在我需要的目录中。谢谢。

编辑:正如Fred-ii所证实的那样,他能够正常运行。我也是,现在知道它链接到第二个PHP文件,因为它现在抛出这个错误:

Warning: Invalid argument supplied for foreach() in assets/images/gallery/index.php on line 4 

第4行读取:

foreach($images as $image)

2 个答案:

答案 0 :(得分:0)

要处理您的错误消息,只需执行此操作以检查$images是否确实包含以下内容:

if (!empty($images)) {

此处它已集成到您的代码中:

<?php
  $images = glob('*.{gif,png,jpg,jpeg}', GLOB_BRACE);
  $num_of_files = 999999999;
  if (!empty($images)) {
    foreach($images as $image) {
     $num_of_files--;

     if($num_of_files > -1)
       echo "<li class='port2'><div class='wrap'><a href="."'".$image."'"." class='thickbox' rel='g'><img src="."'".$image."'"."><div class='mask'><span></span></div></a></div></li>" ;
     else
       break;
   }
  }
?>

答案 1 :(得分:0)

我最终在我的主index.php中使用了包含的脚本,然后更改了目录位置,如下所示:

<?php
  $images = glob('assets/images/gallery/*.{gif,png,jpg,jpeg}', GLOB_BRACE);
  $num_of_files = 999999999;
  foreach($images as $image)
  {
    $num_of_files--;

    if($num_of_files > -1)
    echo "<li class='port2'><div class='wrap'><a href="."'".$image."'"." class='thickbox' rel='g'><img src="."'".$image."'"."><div class='mask'><span></span></div></a></div></li>" ;
 else
   break;
 }
?>

我仍然不确定为什么我不能从它的画廊位置包含它,但这让我摆脱了麻烦。基本上,脚本将以上载日期顺序显示图像。

感谢@ Fred-ii-对此事的帮助。真的很感激。