示例:当向$main_array添加方括号时,我在数组中得到3个点,但当我删除这些括号时,效果很好。
<?php
$user = array('a','b','c');
$cars=array("Volvo","BMW","Toyota");
$roll = array(1,2,3);
$length = count($user);
$main_array = array();
foreach($user as $name){
$list = array();
for($i=0;$i<$length;$i++){
$list[] = array(
'label' => $cars[$i],
'roll' => $roll[$i]
);
}
$main_array[] = array(
'name'=> $name,
'list'=> $list
);
}
var_dump($main_array);
?>
已添加。。。。以下是我正在尝试做的。尝试从twitter api 1.1 中提取提要
$status = array();
$tweetfeed = array();
foreach($users as $user){
$tweets = $connection->get("https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=".$user."&count=".$notweets);
$t=0;
foreach($tweets as $key) {
$status[$t]['text'] = $key ->text;
$status[$t]['stamp'] = twitter_time($key -> created_at);
++$t;
}
$tweetfeed = array (
'status' => $status
);
var_dump($tweetfeed);
}
var_dump($tweetfeed);
结束
foreach($user)
Main_parent {
Child-1{
'key': value
'key': value
}
Child-2{
'key': value
'key': value
}
Child-3{
'key': value
'key': value
}
}
var_dump(Main_parent);
}
var_dump(Main_parent);
在foreach循环中用调用Main_parent可以正常工作,但在foreach环路外调用时只显示child-3。
您正在覆盖每个itteration中$tweetfeed
的值。
$tweetfeed = array (
'status' => $status
);
应为:
$tweetfeed[] = array (
'status' => $status
);
通过使用[]
,您将值推入数组,而不是覆盖它。实际上,您可以将整个过程简化为:
$tweetfeed = array();
foreach($users as $user){
$tweets = $connection->get("https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=".$user."&count=".$notweets);
$status = array();
foreach($tweets as $key) {
$status[]=array(
'text' => $key ->text,
'stamp' => twitter_time($key -> created_at)
);
}
$tweetfeed[] = array (
'status' => $status
);
var_dump($tweetfeed);
}
var_dump($tweetfeed);