php - 如何在PHP中将键值添加到解码的json中?

标签 php json youtube

我使用youtube gdata获取视频链接。我使用的PHP代码:

$json_output = json_decode($json,TRUE);
foreach ( $json_output['data']['items'] as $data ){

echo $data['title']
. '</br>' 
. $data['content'][1]
. '</br>';

网址是http://gdata.youtube.com/feeds/api/videos?q=whatever&v=2&max-results=5&format=1&alt=jsonc。这给了我以下输出:
 Best of whatever 2013
rtsp://r3---sn-o097zuee.c.youtube.com/CiILENy73wIaGQmMKLazIS6kpRMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
2 Girls Asking For 3somes
rtsp://r4---sn-o097zuek.c.youtube.com/CiILENy73wIaGQlmFTJbhKvUOhMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
Girl Picking Up Girls
rtsp://r8---sn-o097zuer.c.youtube.com/CiILENy73wIaGQk1tOjZuJyf2RMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
Awkward Track Situations
rtsp://r8---sn-o097zuek.c.youtube.com/CiILENy73wIaGQkYo23fr3XTdRMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
Asking 200 Girls For Sex (Social Experiment)
rtsp://r8---sn-o097zued.c.youtube.com/CiILENy73wIaGQlzWxK8A722IhMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp

现在我想要以下内容:
Best of whatever 2013
rtsp://r3---sn-o097zuee.c.youtube.com/CiILENy73wIaGQmMKLazIS6kpRMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
[---I want a name here---]
2 Girls Asking For 3somes
rtsp://r4---sn-o097zuek.c.youtube.com/CiILENy73wIaGQlmFTJbhKvUOhMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
[---I want a name here---]
Girl Picking Up Girls
rtsp://r8---sn-o097zuer.c.youtube.com/CiILENy73wIaGQk1tOjZuJyf2RMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
[---I want a name here---]
Awkward Track Situations
rtsp://r8---sn-o097zuek.c.youtube.com/CiILENy73wIaGQkYo23fr3XTdRMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
[---I want a name here---]
Asking 200 Girls For Sex (Social Experiment)
rtsp://r8---sn-o097zued.c.youtube.com/CiILENy73wIaGQlzWxK8A722IhMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
[---I want a name here---]

名称是索引数组,例如:
Names=Red, Green, You, Me.....

如何执行呢?我使用了array_push或merge函数,但是它仅添加一个数组,而不添加诸如Title或Content之类的变量。

最佳答案

foreach之外有一个计数器,例如$count = 0;,然后在foreach内有一个$count++;。然后,您可以使用$names[$count];中的foreach获得与该项目相对应的名称。

$json_output = json_decode($json,TRUE);
$count = 0;
$names = ['name1', 'name2', 'name3', 'name4'];
foreach ( $json_output['data']['items'] as $data ){
     echo ($data['title'] . '<br />' . $data['content'][1] . '<br />' . $names[$count] . '<br />');
     $count++;
}

关于php - 如何在PHP中将键值添加到解码的json中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25464896/

相关文章:

Python 请求和 Json for 循环

css - 如何使用CSS隐藏youtube iframe

ios - 使用 NSURLRequest 上传 Youtube 视频

PHP 和 MySQL 错误 : Object of class mysqli_result could not be converted to string

javascript - 在 Laravel 中发布到数组错误

PHPSpec:通过引用返回的函数

javascript - Captivate HTML5 Module Youtube 视频播放器状态

php - 从 php 运行 Python 脚本,保存进程 pid,不要等待它完成

java - 服务器在 Jersey 中获取 json,JAVA

javascript - 遍历 JSON 数组中的对象