【发布时间】:2013-04-06 06:50:23
【问题描述】:
我在做一个非常简单的php语句比如
print_r($my_rec);
$row = mysqli_fetch_array($my_rec);
echo "\nP_Id " . $row['P_Id'] . ' Length ' . sizeof($row) . "\n";
$row = mysqli_fetch_array($my_rec);
echo "\nP_Id " . $row['P_Id'] . ' Length ' . sizeof($row) . "\n";
现在当 print_r 打印到屏幕上时,它报告每个数组中只有 16 个字段/列。这是真实的。但是,当我获取一个数组时,它给了我双倍的字段。换句话说,数组在重复自己,这是没有意义的。示例...
我的数据库中有
Col1 Col2
"hi1" "bye1"
当我这样做时
$row = mysqli_fetch_array($my_rec);
foreach($row as $x){
echo $x . "\n";
}
它会打印出来
hi1
hi1
by2
by2
为什么我会出现这种行为?
【问题讨论】:
-
RTLM: php.net/mysql_fetch_array,尤其是“返回值”部分。
-
@MarcB L 是什么意思
-
Linked,因为这里的某些人认为F'ing过于苛刻,无法使用。 -
同时查看php.net/mysql_fetch_assoc 以避免包含位置索引。
-
我不明白为什么我被否决了。我阅读了 php 手册,但不明白为什么我得到双数组。然后我去stackoverflow问一个问题,我因为不理解手册而停了下来。你们这些人毁了stackoverflow。这不是为知道自己在做什么的人制作的网站。否则为什么会有人在这里提问。我知道很多人会因为喜欢你而避开这类论坛。