Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.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 mysql“U fetch”数组返回一个数组和数字;1“;_Php_Mysql_Arrays - Fatal编程技术网

Php mysql“U fetch”数组返回一个数组和数字;1“;

Php mysql“U fetch”数组返回一个数组和数字;1“;,php,mysql,arrays,Php,Mysql,Arrays,我对mysql\u fetch\u数组有问题。我正在尝试这样做: if(count(mysql_fetch_array(mysql_query($peticion)))) { array_push($errores, $texto['conta_existe']); } 前面的代码应该检测mysql\u fetch\u数组是否在我的数据库中找到一行,如果至少找到一行,则应该推送一个数组。问题是,如果我的数据库中没有任何内容,fetch_数组将返回数字“1” 我试图找到这种代码的平静是怎

我对mysql\u fetch\u数组有问题。我正在尝试这样做:

if(count(mysql_fetch_array(mysql_query($peticion)))) {
    array_push($errores, $texto['conta_existe']);
}
前面的代码应该检测mysql\u fetch\u数组是否在我的数据库中找到一行,如果至少找到一行,则应该推送一个数组。问题是,如果我的数据库中没有任何内容,fetch_数组将返回数字“1”

我试图找到这种代码的平静是怎么回事:

$arrayc = mysql_fetch_array(mysql_query($peticion), MYSQL_NUM);
echo 'PRINT_R: ';
echo print_r($arrayc);
echo '<br>COUNT: ';
echo count($arrayc);
$arrayc=mysql\u fetch\u数组(mysql\u查询($peticion),mysql\u NUM);
回音“PRINT_R:”;
回音打印(arrayc);
回显“
计数:”; 回波计数($arrayc);
并返回以下内容:

打印:数组([0]=>FLEREX[conta]=>FLEREX)1

计数:2

我不明白为什么在阵列之后会有第一个。上一个引号仅返回一行,以显示数组;但如果数据库中没有任何行,我得到的是:

打印:1

计数:1

我不知道从哪里来的,但总是在那里


感谢阅读并为我的英语不好感到抱歉。

mysql\u fetch\u array
不返回所有结果的数组,它只返回下一行结果,如果没有更多结果,则返回
false
。因此
count()
返回列数乘以2(因为数组包含数字和关联项)

使用
mysql\u num\u rows
获取结果中的行数

if (mysql_num_rows(mysql_query($peticion))) {

尝试mysql_num_rows而不是count,并删除mysql_fetch_数组($arrayc)
print\u r($arrayc)
输出
$arrayc
的值,并返回booleam
true
;然后,您将回显返回的值,并显示为
1
remove echo here
echo print\r($arrayc)
只是一个提示,开始使用PDO或mysqli函数。它们更安全,mysql_*函数(将会?)被弃用。mysql_*从PHP5开始就被弃用了。5@Bono从PHP5.5.0开始,这个扩展就被弃用了。我们同时发布了我们的答案。