$sqlAandM = "SELECT * FROM #_directoryBase_categories WHERE parent_id='1' LIMIT 6";
$getAandM = $wpdb->get_results($sqlAandM, ARRAY_A);
$listAandMMain = "";
foreach ($getAandM as $getAandMExtend){
if($getAandMExtend[is_parent] = "yes") {
$listAandMMain .= "$getAandMExtend[dir_categories]";
//echo $listAandMMain;
}
elseif($getAandMExtend[is_parent] = "no") {
$listAandMSub .= "<li>$getAandMExtend[dir_sub_categories]</li>";
}
}
MYSQL表结构:
当前正在输出
显示输出的内容:
请注意,由于某些原因,已将空列表项添加到子类别的输出中。我只限于6个,因为我将他们的风格低于“广告和媒体”的主要类别项目。
有没有什么方法可以跳过额外的迭代,而不直接通过mysql使用单独的查询将其作为目标呢?
我没有足够的代表张贴在体内的图像,但他们增加了一吨的明确到底发生了什么。
最佳答案
非常确定:
if($getAandMExtend[is_parent] = "yes") {
$listAandMMain .= "$getAandMExtend[dir_categories]";
//echo $listAandMMain;
}
elseif($getAandMExtend[is_parent] = "no") {
$listAandMSub .= "<li>$getAandMExtend[dir_sub_categories]</li>";
}
应该是
if($getAandMExtend[is_parent] == "yes") {
$listAandMMain .= "$getAandMExtend[dir_categories]";
//echo $listAandMMain;
}
elseif($getAandMExtend[is_parent] == "no") {
$listAandMSub .= "<li>$getAandMExtend[dir_sub_categories]</li>";
}
因为两个等号(
==
)询问x是否等于y。一等于(
=
)是x等于y的内容,因此不会比较二者。因此,从上面你想要
==
因为你正在比较没有赋值的值。关于php - 第二个if语句的迭代次数过多,其中列出了额外的空白项目符号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27680643/