проблема php pathinfo - PullRequest
       11

проблема php pathinfo

0 голосов
/ 06 марта 2010

У меня есть этот фрагмент, в каталоге 3 изображения и 3 папки.Он прекрасно отображает изображения, но также выдает ошибку для каждой из папок.

Примечание: неопределенный индекс: расширение в D: \ Data \ Websites \ wamp \ www \ StephsSite \ PHP \ manage.php в строке 119

Что я хочу сделать, так это иметь его, еслион находит файл без расширения (папку), отображающий статическое изображение.Как бы я этого достиг?

$path_info = pathinfo($dir.$file);
$extension = $path_info['extension'];

if($extension) {
    echo "<img class=\"thumbnail\" src=\"".$dir.$file."\" />\n";
}

Ответы [ 2 ]

4 голосов
/ 06 марта 2010

Вы можете использовать array_key_exists, чтобы проверить, существует ли ключ в массиве $ path_info

$path_info = pathinfo($dir.$file);

if(array_key_exists('extension', $path_info)) {
  $extension = $path_info['extension'];
  echo "<img class=\"thumbnail\" src=\"".$dir.$file."\" />\n";
}
1 голос
/ 06 марта 2010

Вы можете использовать isset, чтобы проверить, имеет ли массив, возвращаемый pathinfo, расширение в качестве ключа:

$path_info = pathinfo($dir.$file);

if(isset($path_info['extension'])) {
    echo "<img class=\"thumbnail\" src=\"".$dir.$file."\" />\n";
}

Когда каталог передается в pathinfo, возвращаемый массив не имеет «расширения» в качестве ключа, и когда вы пытаетесь получить к нему доступ с помощью $path_info['extension'], вы получаете

Undefined index Notice.

...