PHP-无法回显返回数组中的值
我有一个函数,它从Mysql数据库检索数据,将值存储在数组中,并将该数组返回给调用函数PHP-无法回显返回数组中的值,php,mysql,arrays,foreach,pdo,Php,Mysql,Arrays,Foreach,Pdo,我有一个函数,它从Mysql数据库检索数据,将值存储在数组中,并将该数组返回给调用函数 $stmt = $dbh->prepare("SELECT img_file_name FROM mjbox_images JOIN mjbox_posts USING (post_id) WHERE post_active = 0 AND post_id = ? "); $stmt->bindParam(1,$post_id); $stmt->execute
$stmt = $dbh->prepare("SELECT img_file_name FROM mjbox_images JOIN mjbox_posts USING (post_id) WHERE post_active = 0 AND post_id = ? ");
$stmt->bindParam(1,$post_id);
$stmt->execute();
$resultarray = array();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$resultarray[] = $row;
}
return $resultarray;
我正试图以如下方式呼出该数组中的$value:
$resultarray = get_post_data($post_id);
print_r($resultarray);
foreach($resultarray as $key => $value){
echo 'The value is: '. $value . '<br />';
}
$resultarray=get\u post\u数据($post\u id);
打印(resultarray);
foreach($resultarray作为$key=>$value){
echo“值为:”.$value.“
”;
}
但当我浏览网页时,它只是呼应出“数组”。
当我打印数组时,值肯定在数组中。那么如何正确显示这些值呢?替换这一行
$resultarray[] = $row;
为此:
$resultarray[] = $row['img_file_name'];
更换这条线
$resultarray[] = $row;
为此:
$resultarray[] = $row['img_file_name'];
有道理。将
$row
保存到数组时,实际上是在创建二维数组$row
是一个数组,即使您只选择了一个值。如果只想保存选定的图像文件名,请将$row['img\u file\u name']
保存到数组中,而不是$row
或者,echo
$value['img\u file\u name']
而不是$value
更有意义。将$row
保存到数组时,实际上是在创建二维数组$row
是一个数组,即使您只选择了一个值。如果只想保存选定的图像文件名,请将$row['img\u file\u name']
保存到数组中,而不是$row
foreach($resultarray as $row){
foreach($row as $key=>$value) {
echo 'The value is: '. $value . '<br />';
}
}
或者,echo$value['img\u file\u name']
而不是$value
foreach($resultarray作为$row){
foreach($resultarray as $row){
foreach($row as $key=>$value) {
echo 'The value is: '. $value . '<br />';
}
}
foreach($key=>$value的行){
echo“值为:”.$value.“
”;
}
}
foreach($resultarray作为$row){
foreach($key=>$value的行){
echo“值为:”.$value.“
”;
}
}
取决于数组结构,像使用foreach一样循环它取决于数组结构,像使用foreach一样循环它hisprint\r
的结果正常,但是hisecho
的结果是array
。hisprint\r
的结果正常,但是他的echo
的结果是Array
。