首頁 > 後端開發 > php教程 > php数组转换的问题

php数组转换的问题

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-06 20:49:49
原創
1237 人瀏覽過

<code>Array(
[server] => Array(
        [0] => hk
        [1] => jp
    )
[fromdate] => Array(
        [0] => 2013-07-17
        [1] => 2013-06-19
))
</code>
登入後複製
登入後複製

以上数组如果最快最简单的方法转换成为

<code>Array(
[0] => Array(
    [server] => 'hk',
    [fromdate] => '2013-07-17'
)
[1] => Array(
    [server] => 'jp',
    [fromdate] => '2013-07-17'
))
</code>
登入後複製
登入後複製

回复内容:

<code>Array(
[server] => Array(
        [0] => hk
        [1] => jp
    )
[fromdate] => Array(
        [0] => 2013-07-17
        [1] => 2013-06-19
))
</code>
登入後複製
登入後複製

以上数组如果最快最简单的方法转换成为

<code>Array(
[0] => Array(
    [server] => 'hk',
    [fromdate] => '2013-07-17'
)
[1] => Array(
    [server] => 'jp',
    [fromdate] => '2013-07-17'
))
</code>
登入後複製
登入後複製

// 源数组
$source = array(
    'server' => array('hk','jp'),
    'fromdate' => array('2013-07-17','2013-07-08')
);

//目标数组
$result = array();
foreach($source as $key=>$value){
    $j = 0;
    // 当然用这里用foreach也可以实现,但是for循环更能直观了解它的怎么工作的。
    for($i=0;$i<count($value);$i++){
        $result[$j][$key] = $value[$i];
        $j++;
    }
    /* foreach实现
    foreach($value as $val){
        $result[$j][$key] = $val;
        $j++;
    }
    */
}

// 输出结果
echo '<pre class="brush:php;toolbar:false">';
print_r($result);
echo '
登入後複製
';

<code>$source = array(
    'server' => array('hk','jp'),
    'fromdate' => array('2013-07-17','2013-07-08')
);
$new_array = array_map(function($server,$fromdate) {
    return array('server'=>$server,'fromdate'=>$fromdate);
}, $source['server'],$source['fromdate']); //代码比较少
</code>
登入後複製

相關標籤:
php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
怎麼學好php
來自於 1970-01-01 08:00:00
0
0
0
PHP擴充intl
來自於 1970-01-01 08:00:00
0
0
0
php數據獲取?
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板