我试图从这个foreach循环得到0结果,但它只是保持空白。但是它会执行else if部分。
我只想显示数据库中的条目。如果没有条目我只想要一个普通的0.
$entries = array();
$sql = "SELECT `id` FROM `events` where creator_id='$id' ORDER BY `id` DESC
LIMIT 1";
$query = mysql_query($sql);
while(($row = mysql_fetch_assoc($query)) !== false)
{
$entries[] = $row['id'];
}
$value1 = "0";
foreach($entries as $entry)
{
if ($entry == false)
{
echo "0";
}
else
if($entry > $value1)
{
echo "$entry";
}
}
问题可能在这里?
答案 0 :(得分:2)
试试这个:
if (count($entries) == 0)
echo "0";
else foreach($entries as $entry)
{
if($entry > $value1)
{
echo "$entry";
}
}
请注意,如果$ entry中的所有内容都是< = $ value1,则可能仍然不显示任何内容。您可能希望将该逻辑移动到SQL语句中,具体取决于您要执行的操作。
答案 1 :(得分:-1)
这可能会解决您的问题。
在while循环中使用!=
而不是!==
。