【发布时间】:2014-07-14 02:48:41
【问题描述】:
我已经为我的内容管理系统创建了一个页面仪表板,并且我正在尝试迭代 scandir 方法并且我的条件不起作用。谁能解释一下原因?
$pages = scandir('../',0);
foreach($pages as $page){
if($page !== "." OR $page !== ".." OR $page !== "admin" OR $page !== "admin.php" OR $page !== "kms_kontent" OR !is_dir('../'.$page)){
$extension = explode('.',$page);
$extension = end($extension);
$page = str_replace('.'.$extension,'',$page);
echo '<div class="row"><ul><li class="fifths">'.$page.'</li><li class="fifths"></li></ul></div>';
}
}
它正在回显所有内容
--public_html
-admin.php #don't show
-admin #don't show
-kms_content #don'tshow
-index.php #show
-shop.php #show
它还显示. 和..,我也不想显示。
【问题讨论】:
-
反转逻辑。使用
&&。 -
呃!我认为它会通过条件测试每个
OR但&&有效,所以我不打算争论! -
你应该使用数组来简化。
-
嗯,真的没有看到简化的逻辑吗?这就是我正在测试的所有内容。