PHP 回显在迭代结果时不显示


php echo not displaying while iterating results

我有一个代码点火器视图,其中"echo"语句不显示输出 - 这仅发生在我在下面给出的特定循环中。我试图通过一个带有 echo 语句的示例循环来运行它;它可以毫无问题地工作。在下面的代码块中$results是从控制器返回的数组。我尝试将数组的值写入文件,并且它们被正确写入。

foreach ($results as $row) {
  fwrite($myfile,$row[0] . PHP_EOL); //this writes perfectly fine
  echo "<tr><td>TEst . $row[0] </td>";  //this doesnt show up
 }

我在这个论坛中尝试了主题为"回声不起作用"的其他线程 - 它们与我的特殊情况不匹配。任何帮助不胜感激

试试这个...

   foreach ($results as $row) {
     fwrite($myfile,$row[0] . PHP_EOL);
     echo '<tr><td>TEst'.$row[0].'</td></tr>';
 }

是:

echo "<tr><td>TEst . $row[0] </td>";

是:

echo "<tr><td>TEst ".$row[0]."</td>";

如果这不起作用,您需要找出您的数组中真正包含的内容,因为这意味着没有 0 键。尝试

print_r($row);

尝试

if($results){
foreach ($results as $row) {
  fwrite($myfile,$row[0] . PHP_EOL);
//try this
 echo "<tr><td>TEst ".$row[0]."</td></tr>";
//or this
echo "<tr><td>TEst ".$row->keyname."</td></tr>";
//or this
echo "<tr><td>TEst ".$row['keyname']."</td></tr>";   
 }
}
else
{
echo "NO RESULTS";
}