我有这样的代码
<?php
global $DB;
$useridQry='';
$login_id = $_SESSION['USER']->id;
if( $_SESSION['idnumber'] == 3 )
{
}
elseif( $_SESSION['idnumber'] == 2 )
{
$records=$DB->get_records_sql("select * from {user} where
maildigest=$login_id");
print_r($records);
if(empty($records) && count($records){
{
$userIds='';
foreach($records as $row)
{
$userIds="'".$row->id."'";
}
//$useridQry = " and st.userid IN ($userIds)";
}
}
else
{
$useridQry = " and st.userid = $login_id";
}
所以发生的事情是,它是否会在表格中显示任何记录
print_r($records);
当我使用print时,
但如果没有数据显示空数组,如Array ( )
所以当它显示空数组时它也会在我的表中显示数据..如果它是空数组,我不想显示数据..
任何人都可以帮助我如何做到这一点,
提前感谢..
答案 0 :(得分:3)
请看这个代码段:https://3v4l.org/CjTuv
$x = [];
print_r($x);
if (count($x)) {
echo 'yes';
}
print_r()
将始终显示输出。它通常只是用于调试。如果您不想显示Array(),请删除print_r
或将其移到if语句中。
答案 1 :(得分:-1)
试试这个:
if(!empty($records) && count($records) > 0){ ...
而不是:
if(count($records)){
答案 2 :(得分:-1)
如果数组为空,检查怎么样?
if (empty($playerlist)) {
// list is empty.
}