Php Wordpress:使用glob()返回一个空数组

Php Wordpress:使用glob()返回一个空数组,php,arrays,wordpress,glob,Php,Arrays,Wordpress,Glob,我试图从指定目录中提取所有图像,然后显示它们。我在一个普通网站上使用了下面的代码,它可以正常工作 <?php $dirname = "images/tile/tile2/"; $images = glob($dirname."*.jpg"); foreach($images as $image) { echo '<li><img src="'.$image.'" /><br /></li>'; }?> 我现在已经移动了这

我试图从指定目录中提取所有图像,然后显示它们。我在一个普通网站上使用了下面的代码,它可以正常工作

<?php $dirname = "images/tile/tile2/";
  $images = glob($dirname."*.jpg");

  foreach($images as $image) {
  echo '<li><img src="'.$image.'" /><br /></li>';
}?>
我现在已经移动了这段代码并将其修改到wordpress站点,得到了一个空数组

<?php $dirname = get_template_directory_uri()."/images/tile/tile1/";
      $images = glob($dirname. "*.jpg"); 
      //$images = glob($dirname."*. {jpg}", GLOB_BRACE); - tried with GLOB_RACE
      foreach($images as $image) {
        echo '<li><img src="'.$image.'" /><br /></li>';
}?>
第二代码

<?php define('ACCREDPATH', get_template_directory_uri() . '/images/tile/tile1/');
 $images = glob(ACCREDPATH. "*.jpg");
 //$images = glob(ACCREDPATH. "*. {jpg}", GLOB_BRACE); - tried with GLOB_RACE 
foreach($images as $image) {
   echo '<li><img src="'.$image.'" /><br /></li>';
}?>
我已检查图像是否在文件夹中 我已经做了一个var_转储,我得到了正确的路径。 glob$images上的var_dump给出了数组0{} 我也找了其他有这个问题的人,但还是一无所获 请注意,任何帮助都是有用的。

glob在本地路径而不是URL上工作。该函数需要能够访问服务器的文件系统,而不能通过URL远程访问

您在工作代码中提供的路径是相对的。它之所以起作用,是因为它既可以用作文件路径,也可以用作URL

为了获得与主题的绝对路径相同的结果,您需要使用get\u template\u目录。在提供的示例中,我使用get_template_directory获取绝对路径,并将get_template_directory_uri作为URL输出

例如:

$theme_img_path = '/images/tile/tile1/';
$images  = glob( get_template_directory() . $theme_img_path . '*.jpg' );

foreach ( $images as $image ) {

    // Convert the filename into an absolute URL.
    echo get_template_directory_uri() . $theme_img_path . basename( $image );
}
在你的第二次尝试中还有一个值得指出的问题。不能使用函数设置常量的值