我正在使用此代码查找名为begin thumb _
的所有图片for ($i=0; $i<count($files); $i++) {
$pattern = '/thumb_[\w\-]+\.(jpg|png|gif|jpeg)/';
$result = preg_match($pattern, $files[$i], $matches);
echo $matches[0]."<br>";
}
我明白了:
Notice: Undefined offset: 0 in C:\xampp\htdocs\imgs.php on line 31
Notice: Undefined offset: 0 in C:\xampp\htdocs\imgs.php on line 31
Notice: Undefined offset: 0 in C:\xampp\htdocs\imgs.php on line 31
thumb_Koala.jpg
thumb_Lighthouse.jpg
答案 0 :(得分:0)
更简单......
<?php
foreach (preg_grep('/^thumb_[\w\-]+\.(jpg|png|gif|jpeg)$/', scandir('uploads')) as $path) {
printf('<img src="uploads/%s" style="margin: 10px"><br>', $path);
}
答案 1 :(得分:-1)
你可以简单地这样做来隐藏php上的任何错误
error_reporting(0);
但其他明智的你必须问自己为什么会出现这个错误?这肯定是因为没有设置数组$ matches,所以当你尝试访问键0时你得到了未定义的错误,你可以对数组$ match进行简单的检查。也请把括号放在这个0键
中喜欢
$matches['0'];
防止默认密钥分配。另外,您可以使用echo
而不是print_r
!
感觉你不会发布任何代码所以这是我最后的帮助更好地使用这个代码
<?php
$files = glob('images/*.{jpg,png,gif,jpeg}', GLOB_BRACE);
foreach($files as $file) {
?>
<img src='<?php echo $file; ?>' /><br />
<?php
}
?>
欢迎你!