为了账号安全,请及时绑定邮箱和手机立即绑定

打印出来的PDOStatment成员变量就一个["queryString"],为啥能遍历出来好多的结果集数组呀,一直觉得好神奇,求原理

自己写了个class  里面有4个成员变量,foreach遍历出来就是4个数据,

但是PDOStatment打印出来的时候大括号里面就一个["queryString"],为啥foreach能遍历出所有结果集的内容?

想知道原理啊,想半天想不通,看源码也不知道在哪实现的这个接口。

图如下:

http://img1.sycdn.imooc.com//57a1b9870001087306180497.jpg

正在回答

1 回答

我也不太懂 但是你应该是用var_dump() 从官方看到的

var_dump():此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构

$pdo = new pdo($dsn,$username,$passwd);

$sql = "SELECT * FROM user";

// $pdo->query($sql):代表一条预处理语句,并在该语句被执行后代表一个相关的结果集

$stmt = $pdo->query($sql);

var_dump($stmt);//打印输出

因为你返回的是一个相关的结果集,并不是一个数组

(应该就是这样,我是这样理解不一定对,假如你解决了记得通知我一下我也学习学习)

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

打印出来的PDOStatment成员变量就一个["queryString"],为啥能遍历出来好多的结果集数组呀,一直觉得好神奇,求原理

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信