Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 检查查询结果是否为空行mysqli_Php_Mysql_Mysqli - Fatal编程技术网

Php 检查查询结果是否为空行mysqli

Php 检查查询结果是否为空行mysqli,php,mysql,mysqli,Php,Mysql,Mysqli,我正在使用这段代码,但我不知道如何检查查询是否返回零行。我该怎么查呢 $results = $mysqli->query("SELECT ANNOUNCE_NUMBER,ANNOUNCEMENTS,ANNOUNCE_TYPE,POST_DATE FROM home WHERE ANNOUNCE_NUMBER NOT LIKE $excludewelcome AND ANNOUNCE_NUMBER NOT LIKE $excludenews ORDER BY ANNOUNCE_NUMBER

我正在使用这段代码,但我不知道如何检查查询是否返回零行。我该怎么查呢

$results = $mysqli->query("SELECT ANNOUNCE_NUMBER,ANNOUNCEMENTS,ANNOUNCE_TYPE,POST_DATE FROM home WHERE ANNOUNCE_NUMBER NOT LIKE $excludewelcome AND ANNOUNCE_NUMBER NOT LIKE $excludenews ORDER BY ANNOUNCE_NUMBER DESC LIMIT $position, $items_per_group");
if ($results) { 
    //output results from database

    while($obj = $results->fetch_object())
    {
        if($obj->ANNOUNCE_TYPE=='NEWSEVENTS')
        {
            $realstring='News and Events';
        }
        else
        {
        $realstring='Welcome Note';
        }

        echo '<li id="item_'.$obj->ANNOUNCE_NUMBER.'"><strong>'.$realstring.'</strong></span>';
        echo '<br \>'; 
        echo '('.$obj->POST_DATE.' ) <span class="page_message">'.$obj->ANNOUNCEMENTS.'</span></li>';
    }

}
$results=$mysqli->query(“选择布告编号、布告、布告类型、布告日期,布告编号不象$excludewelcome,布告编号不象$excludenews,按布告编号描述限额$position,$items每组”);
如果($结果){
//从数据库输出结果
而($obj=$results->fetch_object())
{
如果($obj->annound_TYPE=='NEWSEVENTS')
{
$realstring='News and Events';
}
其他的
{
$realstring='Welcome Note';
}
echo“
  • 。$realstring.”; 回音“”; 回显“(“$obj->POST_DATE.”)。$obj->公告。”
  • ”; } }
    您可以使用数据集上的来检查返回的行数。例如:

    $results = $mysqli->query("SELECT ANNOUNCE_NUMBER,ANNOUNCEMENTS,ANNOUNCE_TYPE,POST_DATE FROM home WHERE ANNOUNCE_NUMBER NOT LIKE $excludewelcome AND ANNOUNCE_NUMBER NOT LIKE $excludenews ORDER BY ANNOUNCE_NUMBER DESC LIMIT $position, $items_per_group");
    if ($results) { 
    
        if($results->num_rows === 0)
        {
            echo 'No results';
        }
        else
        {
            //output results from database
            while($obj = $results->fetch_object())
            {
                if($obj->ANNOUNCE_TYPE=='NEWSEVENTS')
                {
                    $realstring='News and Events';
                }
                else
                {
                $realstring='Welcome Note';
                }
    
                echo '<li id="item_'.$obj->ANNOUNCE_NUMBER.'"><strong>'.$realstring.'</strong></span>';
                echo '<br \>'; 
                echo '('.$obj->POST_DATE.' ) <span class="page_message">'.$obj->ANNOUNCEMENTS.'</span></li>';
            }
        }
    }
    
    $results=$mysqli->query(“选择布告编号、布告、布告类型、布告日期,布告编号不象$excludewelcome,布告编号不象$excludenews,按布告编号描述限额$position,$items每组”);
    如果($结果){
    如果($results->num_rows==0)
    {
    回应“没有结果”;
    }
    其他的
    {
    //从数据库输出结果
    而($obj=$results->fetch_object())
    {
    如果($obj->annound_TYPE=='NEWSEVENTS')
    {
    $realstring='News and Events';
    }
    其他的
    {
    $realstring='Welcome Note';
    }
    echo“
  • 。$realstring.”; 回音“”; 回显“(“$obj->POST_DATE.”)。$obj->公告。”
  • ”; } } }
    如果数组为[null]或[null,null]或[null,null,null,…]

    您可以使用内爆:

    内爆用于将数组转换为字符串

    $con = mysqli_connect("localhost","my_user","my_password","my_db");
    $result = mysqli_query($con,'Select * From table1');
    $row = mysqli_fetch_row($result);
    if(implode(null,$row) == null){
         //$row is empty
    }else{
         //$row has some value rather than null
    }
    

    但是我认为最好使用一个if:if($results)&($results->num_rows!==0)){1.当不需要粘合时,可以省略粘合参数。2.如果所有值都为null/空,则此检查将失败。