循环遍历这个返回的数组,PHP

时间:2015-04-10 21:59:51

标签: php arrays

出于某种原因,我无法绕过这一个,谷歌现在还没有公平竞争。

我要做的是从$get_stream_addresses = file_get_contents('http://ip/transcode.php')的其他服务器调用.php文件。 .php文件将查询数据库并返回结果。

在SERVER 1上

.php函数

static function get_addresses($stream_id) {

    $get_stream_addresses = DB::select('SELECT * FROM stream_addresses WHERE stream_id = ?',
        array($stream_id));


    $i = 0;
    foreach($get_stream_addresses as $stream_address) {
        $i++;
        $stream_addresses[$i] = array(
            'url' => $stream_address->url,
            'bitrate' => $stream_address->bitrate,
            'v_height' => $stream_address->v_height,
            'v_width' => $stream_address->v_width
        );
    }

    return $stream_addresses;

}

以上输出:

{"1":{"url":"999_high","bitrate":"2500","v_height":"720","v_width":"1280"},"2":{"url":"999_medium","bitrate":"1000","v_height":"480","v_width":"854"},"3":{"url":"999_low","bitrate":"600","v_height":"360","v_width":"640"}}

我需要做的是循环遍历$ get_stream_addresses:

这样的东西
foreach($get_stream_addresses as $stream_address) {
     $stream_url = $stream_address['url'];
}

2 个答案:

答案 0 :(得分:0)

foreach($get_stream_addresses as $stream_address) {
     $stream_urls[] = $stream_address->url;
}

这将为您提供所有URL的简单数组 - 假设这是您想要的。

答案 1 :(得分:0)

(代表OP发布)

在问题评论中,Castis帮助打开了灯泡。我需要用这个:

$get_stream_addresses = json_decode(
   file_get_contents('http://ip/transcode.php')
);