php - 对象与数组、{ } 与 [ ]、echo 与 print_r

标签 php mysql arrays redbean

我需要澄清一下 PHP+mySQL 中数据对象和数组之间的区别,以及我认为相关的东西:用 { }[ ]< 表示“数组类型数据”/

我正在使用 PHP、mySQL 和 RedBean ORM。

<小时/>

我从表中取出一条记录(表行),并将其存储在 PHP 中名为 $record 的变量中

当我运行以下命令时:

echo $record;

我得到以下输出:

{"id":"1","name":"Frankie Johnnie & Luigo Too","address":"939 W El Camino Real, 山景城, CA","lat":"37.386429 ","lng":"-122.085838","费用":"0.00"}

<小时/>

接下来,我从表中提取列名并将其存储在名为 $fields 的变量中

当我运行以下命令时:

echo $fields;

我得到以下输出:

注意:第 18 行/Applications/XAMPP/xamppfiles/htdocs/devserver/crud/show.php 中的数组到字符串转换 数组

当我运行以下命令时:

print_r($fields);

我得到以下输出:

数组 ( [id] => int(11) [名称] => varchar(60) [地址] => varchar(80) [lat] => float(10,6) [lng] = > float(10,6) [费用] => 小数(5,2) )

<小时/>

为什么echo适用于第一个,但第二个需要print_r?我需要学习什么才能重温这里发生的事情?

最佳答案

Koen Hoejimakers(和 Mark Ba​​ker)在评论中正确回答了问题:

“第一个返回是一个json字符串,第二个是一个数组,echo对数组不起作用,但echo对json字符串起作用,因为它是一个有效的字符串,在$record上,执行 json_decode($ record,true);,它现在将是一个数组,就像您的第二次返回一样:) – Koen Hoeijmakers"

当 SO 几天后允许我时,我会将其标记为正确。

关于php - 对象与数组、{ } 与 [ ]、echo 与 print_r,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28972199/

相关文章:

mysql - Power bi 到本地主机上的 Mysql

mysql - 如何为此 : an integral field and it's last four must be zero 创建 SQL

c++ - 数组没有产生正确的输出

C 编程命令行参数

PHP - 从显示图片(存储路径)的 MySQL 创建新闻源

javascript - 使用 javascript 交换用作背景的图像

PHP数组到json可读输出

php - 如何告诉 Composer 使用我的 fork 的一个分支?

mysql - Munin MySQL插件的未知图形错误

php - 打印前重新排列数据