我需要列出每个项目的列表,国家打印正常,但第二个foreach打印任何我不明白的
$countries = array('abc','def','ghi' );
foreach ($countries as $key) {
echo "<ul> ".$key;
$character = characters::where('country',$key);
foreach ($personaje as $p) {
echo $ch->name ;
}
echo "</ul>";
}
它应该是这样的,我100%保证桌子的名字和$ key匹配,我是用工匠的修补器做的
答案 0 :(得分:1)
试试这个:
$countries = array('abc','def','ghi' );
foreach ($countries as $key) {
echo "<ul> ".$key;
$character = characters::where('country',$key)->get();
foreach ($character as $ch) {
echo $ch->name ;
}
echo "</ul>";
}
答案 1 :(得分:0)
根据您提供的代码段,此部分代码存在许多问题:
$character = characters::where('country',$key);
foreach ($personaje as $p) {
echo $ch->name ;
看起来您正在尝试进行查询以获取$字符 变量,但你没有执行它。添加“get”到结尾 语句:
$ character = characters :: where('country',$ key) - &gt; get();
您的第二个foreach循环使用变量 $ personaje ,其中 尚未定义,至少在您提供的代码中。应该 它是 $ character ?
你的foreach循环使用“$ personaje as $ p”,但你永远不会使用 循环中变量 $ p 。相反,您回应 $ ch-&gt;名称。该 您提供的代码中不存在变量 $ ch 。