[英]How to get all values in multidimensional array
Array(
[0]=> Array
(
[id] => 1
[name] => Jane
[comment_id] => 1
[post_id] => 1
)
[1] => Array
(
[id] => 2
[name] => john
[comment_id] => 1
[post_id] => 1
)
[2] => Array
(
[id] => 3
[name] => anny
[comment_id] => 2
[post_id] => 1
)
[3] => Array
(
[id] => 4
[name] => adrea
[comment_id] => 3
[post_id] => 2
)
)
我希望它是这样的
Array
(
[id] => 1
[name] => Jane
[comment_id] => 1
[post_id] => 1
)
(
[id] => 2
[name] => john
[comment_id] => 1
[post_id] => 1
)
(
[id] => 3
[name] => anny
[comment_id] => 2
[post_id] => 1
)
(
[id] => 4
[name] => adrea
[comment_id] => 3
[post_id] => 2
)
因此,如果我能够计算具有相同comment_id
的所有值,即 2 具有相同的comment_id
,1 具有具有相同post_id
的comment _id
但是当我尝试计算每个值时$query = mysqli_query " SELECT * FROM reply AS r JOIN comments AS c ON r.comment_id=c.id";
我只有在打印出来时才会得到这个,我已经尝试了好几天了
(
[id] => 1
[name] => Jane
[comment_id] => 1
[post_id] => 1
)
所以它只打印一条记录
它没有给我所有
$result = [];
foreach( $array as $row ) {
if($row['comment_id'] === 1) {
array_push($result, $row);
}
}
当您的结果在 $array 中时,您可以通过 foreach 循环越过数组的第一个维度。 您示例中的每个条目([0]、[1] 等)都将分配给 $row,因此 $row 应该看起来像
(
[id] => 1
[name] => Jane
[comment_id] => 1
[post_id] => 1
)
现在您查看每个条目,如果列 comment_id 与您想要的值匹配,当它被处理时将它放入一个新数组 $result 中。
最后 $result 应该看起来像 $array ( 2 dim array ) 但只有过滤后的条目在里面。 还有一个array_filter()
function 可以找找,不过我觉得这个循环比较好理解
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.