Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP insert array associative-我想在associative数组中的现有数组中插入一个值_Php_Arrays_Json_Web_Associative - Fatal编程技术网

PHP insert array associative-我想在associative数组中的现有数组中插入一个值

PHP insert array associative-我想在associative数组中的现有数组中插入一个值,php,arrays,json,web,associative,Php,Arrays,Json,Web,Associative,我有问题 如何向现有数组插入值,我的结果如下: Array ( [id] => 11 [title] => Lorem ipsum [view] => 3445 ) $funcvid = array(); foreach($newVideo as $id){ $ids = $id['id']; $vidview = YtJson('apilink', $ids, ''); array_push($funcvid, $vidv

我有问题 如何向现有数组插入值,我的结果如下:

Array
(
    [id] => 11
    [title] => Lorem ipsum
    [view] => 3445
)
$funcvid = array();
foreach($newVideo as $id){

    $ids = $id['id'];

    $vidview = YtJson('apilink', $ids, '');
    array_push($funcvid, $vidview);
}
但我所做的是:

<?php

$newVideo = [
    'id'=>'11',
    'title'=>'Lorem ipsum'            
];

$view = '3445';

$newVideo[] = ['view'=>$view];

print_r($newVideo);
更新问题:在我的情况下,我有复杂的foreach 在每个foreach中,我希望将值存储到变量数组,如下所示:

$newVideo = array();
foreach ($videos['items'] as $v){
    $id = $v['snippet']['resourceId']['videoId'];
    $title = $v['snippet']['title'];

    $newVideo[] = [ "id" => $id ,"title" => $title];
$newVideo有['id']和['title'],我也想存储['view'],但我必须先使用foreach函数从['id']获取视图数据,因此我使用foreach函数获取视图的代码如下:

Array
(
    [id] => 11
    [title] => Lorem ipsum
    [view] => 3445
)
$funcvid = array();
foreach($newVideo as $id){

    $ids = $id['id'];

    $vidview = YtJson('apilink', $ids, '');
    array_push($funcvid, $vidview);
}
我得到了视频统计数据,因此我可以从该函数中获取视图数据,因此我再次使用以下代码存储视图数据值:

foreach($funcvid as $f){
    foreach ($f['items'] as $h){
        $view = $h['statistics']['viewCount'];
}
    $newVideo['view'] = $view;
}

但对于最后一个foreach,我无法将值存储到$newVideo['view'],它不会删除,如果数组是二维的,我就成功了,但我的经验是数组是一维的。

是二维数组。您需要对第一个维度进行索引,以获得关联的内部数组

foreach($funcvid as $i => $f){
    foreach ($f['items'] as $h){
        $view = $h['statistics']['viewCount'];
    }
    $newVideo[$i]['view'] = $view;
}
但是你不需要3个不同的循环,你可以在一个循环中完成

<?php
$newVideo = array();
foreach ($videos['items'] as $v){
    $id = $v['snippet']['resourceId']['videoId'];
    $title = $v['snippet']['title'];
    $vidview = YtJson('apilink', $ids, '');
    foreach ($vidview['items'] as $h) {
        $view = $h['statistics']['viewCount'];
    }
    $newVideo[] = [ "id" => $id ,"title" => $title, 'view' => $view];
}

newVideo['view']=$view这是你应该在任何教科书或教程中找到的基本语法。好吧,对于新手的问题,很抱歉,但在我的例子中,我有一个复杂的foreach,它不会插入我想要的值,所以我确保找到答案,我的代码中的FYI是:foreach($funcvid as$f){foreach($f['items']as$h){$view=$h['statistics']['viewCount]}$newVideo['view']=$view;}和代码上方的许多foreach,因此我想存储每个foreach到新数组的关联,在问题中发布代码,而不是注释。看起来,
$newVideo
应该是一个二维数组,因为您需要与每个项目对应的不同元素。