php - 第一行php之后数组行值是空白的
问题描述
我有一个奇怪的问题,在我遍历一个数组后,我可以从第一行获取所有第一个值,但在那一行之后,所有值都是空白的。
我有一个这样的数组(还有更多我只是缩短了它)
Array
(
[data] => Array
(
[0] => Array
(
[id] => 76
)
[1] => Array
(
[id] => 77
)
[2] => Array
(
[id] => 78
)
)
)
在我的 php 中,我使用
$result = json_decode(json_encode($result), true);
$i = 2;
for ($x = 0; $x <= $i; $x++) {
// I do stuff here
}
如果我像下面那样循环遍历数组,第一个值进入但最后两个是空白的,所以我得到(76)
$result = json_decode(json_encode($result), true);
$i = 2;
for ($x = 0; $x <= $i; $x++) {
echo $result['data'][$x]['id'];
}
所以我检查$x
以确保值是正确的(0,1,2)
,它们回显为012
这就是奇怪的地方。如果我手动输入数字并echo
获得所有三行的正确值
echo $result['data'][0]['id'];
echo $result['data'][1]['id'];
echo $result['data'][2]['id'];
从那,我得到767778
我到底做错了什么?
解决方案
你应该使用“sizeof”
for($i = 0; $i < sizeof($result['data']) ;$i++){
echo $result['data'][$i]['id'];
}
o foreach 循环:
foreach($result['data'] as $data){
echo $data['id'];
}
推荐阅读
- python - 如何将日期转换为 Django 时区感知日期时间
- django - Django 管理样式损坏
- javascript - 将数据从一个异步函数传递到另一个的问题
- java - 使用过滤器实现 JAX-RS 身份验证会中断 OpenApi 端点
- python - Python:名称“变量”是本地和全局的
- node.js - Heroku - EmberJS - 部署失败(无法下载节点)
- excel - 如果一个组合框被更改,则重置另一个组合框
- javascript - 不从 vaadin 7 调用 javascript 函数
- amazon-web-services - AWS Kinesis KCL 跳过启动前添加的记录
- python - 我怎样才能将解决方案打印为分数,而不是那样?