首页 文章

从多维数组php中提取值

提问于
浏览
0

我正在使用CURL与多个请求输出多维数组 . 我需要从输出中提取3个值(url,content_type和http_code),然后分别将每个值分配给一个新数组,即 $array1=url $array2=content_type $array3=http_code.

我尝试使用for语句来提取每个值但是没有按预期工作,我得到了

“Undefined offset:”数组输出数组([http:// example1 /] =>数组([url] => http:// example1 / [content_type] => [http_code] => 405 [header_size] => 249 [request_size] => 48 [filetime] => -1 [ssl_verify_result] => 0 [redirect_count] => 0 [total_time] => 0.328 [namelookup_time] => 0 [connect_time] => 0.172 [pretransfer_time] => 0.172 [ size_upload] => 0 [size_download] => 0 [speed_download] => 0 [speed_upload] => 0 [download_content_length] => 0 [upload_content_length] => -1 [starttransfer_time] => 0.328 [redirect_time] => 0 [redirect_url ] => [primary_ip] => 204.79.197.200 [certinfo] => Array()[primary_port] => 80 [local_ip] => 192.168.2.12 [local_port] => 55536)[http:// example2 /] =>数组([url] => http:// example2 / [content_type] => text / html; charset = utf-8 [http_code] => 200 [header_size] => 699 [request_size] => 57 [filetime] => -1 [ssl_verify_result] => 0 [redirect_count] => 0 [total_time] => 0.453 [namelookup_time] => 0.015 [connect_time] => 0.203 [pretransfer_time] => 0 . 203 [size_upload] => 0 [size_download] => 0 [speed_download] => 0 [speed_upload] => 0 [download_content_length] => -1 [upload_content_length] => -1 [starttransfer_time] => 0.453 [redirect_time] => 0 [redirect_url] => [primary_ip] => 104.16.34.249 [certinfo] => Array()[primary_port] => 80 [local_ip] => 192.168.2.12 [local_port] => 55539))

for($y=0;$y<= (count($array1)-1);$y++){
      echo $array1 [$y][0][1][2];
  }

1 回答

  • 0

    如果你想得到这个:

    $array1 = [
        'content_type' => ['', 'text/html; charset=utf-8']
    ];
    
    $array2 = [
        'url' => ['http://example1/', 'http://example2/']
    ];
    
    $array3 = [
        'http_code' => [405, 200]
    ];
    

    然后尝试使用 foreach 循环 .

    foreach ($output as $url => $values) {
        $array1['content_type'][] = $values['content_type'];
        $array2['url'][] = $values['url'];
        $array3['http_code'][] = $values['http_code'];
    }
    

    阅读更多关于foreach loopArray type的信息 . 同样在关联数组中,您无法使用数字索引获取值,而是使用字符串而不是 .

相关问题