【发布时间】:2013-01-20 22:12:23
【问题描述】:
使用的代码将从 GLOB_BRACE 中列出的 3 个文件夹中的任何一个中随机抽取 10 个文件。
例如:
$files = (glob('../{folder1,folder2,folder3}/*.php', GLOB_BRACE));
我想在 $thelist 下面看到的 url 中回显文件夹名称
$thelist .= '<p><a href="../'.$folder 1 or 2 or 3.'/'.$file.'">'.$title.'</a></p>';
所以当它显示在我的页面上时,它会读取。
<p><a href="../folder1/page-name.php">what ever</a></p>
<p><a href="../folder3/page-name.php">what ever</a></p>
<p><a href="../folder1/page-name.php">what ever</a></p>
<p><a href="../folder2/page-name.php">what ever</a></p>
<p><a href="../folder1/page-name.php">what ever</a></p>
<p><a href="../folder3/page-name.php">what ever</a></p>
<p><a href="../folder2/page-name.php">what ever</a></p>
<p><a href="../folder3/page-name.php">what ever</a></p>
<p><a href="../folder1/page-name.php">what ever</a></p>
<p><a href="../folder2/page-name.php">what ever</a></p>
使用的代码:
<?php
$files = (glob('../{folder1,folder2,folder3}/*.php', GLOB_BRACE)); /* change php to the file you require either html php jpg png. */
shuffle($files);
$selection = array_slice($files, 0, 11);
foreach ($selection as $file) {
$file = basename($file);
if ($file == 'index.php') continue;
$title = str_replace('-', ' ', pathinfo($file, PATHINFO_FILENAME));
$randomlist .= '<p><a href="../'.$folder 1 or 2 or 3.'/'.$file.'">'.$title.'</a></p>';
}
?>
<?=$randomlist?>
【问题讨论】:
-
什么不起作用?您在获取文件夹名称时遇到问题吗?
dirname($file) -
是的,我不知道如何获取文件夹名称
-
这应该是
dirname($file)得到的。 -
我已尝试添加 $path = dirname($file);然后将 $path 添加到 $randomlist .= '';我还在学习php你看所以我不知道。
-
试试我在下面发布的内容。实际上不需要执行 basename() 或 dirname()。
标签: php arrays echo shuffle glob