Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在具有PHP foreach循环的目录中成功循环imagss_Php_Loops_Foreach - Fatal编程技术网

无法在具有PHP foreach循环的目录中成功循环imagss

无法在具有PHP foreach循环的目录中成功循环imagss,php,loops,foreach,Php,Loops,Foreach,以下是循环: <?php // I added this just to see if HTML_PATH_UPLOADS_PAGES points to the right directory echo "<img style=\"width:100%;height:100%;\" src=\"" . HTML_PATH_UPLOADS_PAGES . "c60fca4c682803c969f2410084878155/1.jpg\">\n"; // Loop through

以下是循环:

<?php
// I added this just to see if HTML_PATH_UPLOADS_PAGES points to the right directory
echo "<img style=\"width:100%;height:100%;\" src=\"" . HTML_PATH_UPLOADS_PAGES . "c60fca4c682803c969f2410084878155/1.jpg\">\n";
// Loop through all the image files in the right sidebar.
foreach (glob(HTML_PATH_UPLOADS_PAGES . "c60fca4c682803c969f2410084878155/{*.[gG][iI][fF],*.[jJ][pP][gG],*.[jJ][pP][eE][gG],*.[pP][nN][gG]}", GLOB_BRACE) as $image) {

    // Display the image in the right sidebar.
    echo "<div class=\"col-md-6 col-lg-4 item zoom-on-hover\">\n";
    echo "<a class=\"lightbox\" href=\"" . HTML_PATH_UPLOADS_PAGES . "c60fca4c682803c969f2410084878155/" . basename($image) . "\">\n";
    echo "<img class=\"img-fluid image\" src=\"" . HTML_PATH_UPLOADS_PAGES . "c60fca4c682803c969f2410084878155/" . basename($image) . "\" >\n";
    echo "</a>\n";
    echo "</div>\n";
}

?> 

尝试添加此常量以获取文件夹的文件系统路径:

define('FILE_PATH_UPLOADS_PAGES', 
  rtrim($_SERVER['DOCUMENT_ROOT'], '/\\') . '/bludit/bl-content/uploads/pages/');
然后与glob一起使用:

glob(FILE_PATH_UPLOADS_PAGES . 'c60fca4c682803c969f2410084878155 ...');
具有相对路径的备选方案:

define('FILE_PATH_UPLOADS_PAGES', 
  __DIR__ . '/../../bl-content/uploads/pages/');
但是,如果确实不想创建另一个常量,可以尝试:

glob(rtrim($_SERVER['DOCUMENT_ROOT'], '/\\') 
  . '/' . HTML_PATH_UPLOADS_PAGES 
  .  'c60fca4c682803c969f2410084878155...');

HTML\u PATH\u UPLOADS\u PAGES
的价值是什么
glob
需要一个文件路径(或其模式),而图像的
src
属性需要一个URL/URI,这是不同的。我添加了
HTML\u path\u UPLOADS\u PAGES
的定义。这对杰托有帮助吗?嗯,
glob
需要一个文件路径这一事实解释了为什么会显示图像,但foreach循环不起作用。要给glob一个文件路径而不是URL/URI,我需要做些什么更改?如果这仍然不起作用,请
var\u dump($\u SERVER['DOCUMENT\u ROOT'))
并告诉我它的值。基本上,您必须从那里构建一个路径(虽然您也可以使用当前脚本中的相对路径,但在您的情况下这有点尴尬,imho)。我将常量
FILE\u path\u UPLOADS\u PAGES
更改为:
define($\u SERVER['DOCUMENT\u ROOT'],'/\\')。/bludit/bl content/UPLOADS/PAGES/)现在它可以工作了:D我有没有办法使用常量
HTML_PATH_UPLOADS_PAGES
,它的值为“/bludit/bl content/UPLOADS/PAGES/”?我想到的是这样的:`glob(“../../../../.”HTML_PATH_UPLOADS_PAGES。“c60fca4c682803c969f2410084878155…”)@约翰尼看到我编辑过的答案了。再说一次,我可能有一些文件夹关闭,但通过var_转储不同的元素,您应该可以找到正确的公式:)非常感谢@Jeto!介意我给你买一杯B,e,e,r,欢乐饮料吗??
glob(rtrim($_SERVER['DOCUMENT_ROOT'], '/\\') 
  . '/' . HTML_PATH_UPLOADS_PAGES 
  .  'c60fca4c682803c969f2410084878155...');