php隨機(jī)選擇數(shù)組內(nèi)容 array_rand-php函數(shù)

字號(hào):


    昨天是數(shù)組合并,今天依舊是數(shù)組合并,今天是昨天array_merge的延伸,昨天的如果遇到相同的數(shù)據(jù),則出現(xiàn)覆蓋情況
    本次將的是array_merge_recursive不會(huì)覆蓋,會(huì)形成新的數(shù)組。
    看語(yǔ)法
    $newarray = array_merge_recursive($array1,$array2.....);
    英文merge 合并的意思,recursive是遞歸的意思
    特殊的情況與array_merge不同之處說(shuō)明一下
    1.不會(huì)覆蓋相同的內(nèi)容,相同的內(nèi)容會(huì)以相同的key存儲(chǔ)為數(shù)組
    2.會(huì)遞歸深層次的數(shù)組,在以往的函數(shù)中不會(huì)遞歸,該函數(shù)是遞歸的
    看例子學(xué)習(xí)php數(shù)組相同數(shù)據(jù)合并array_merge_recursive
    例子1:有索引的數(shù)組的合并
    <?php
    $array = array("forasp"=>".cn","key"=>"1","temp"=>2);
    $array1 = array("forasp"=>"www.anypoetry.com","key"=>1,"temp"=>3);
    $forasp = array_merge_recursive($array,$array1);
    print_r($forasp);
    ?>
    結(jié)果
    Array
    (
    [forasp] => Array
    (
    [0] => .cn
    [1] => www.anypoetry.com
    )
    [key] => Array
    (
    [0] => 1
    [1] => 1
    )
    [temp] => Array
    (
    [0] => 2
    [1] => 3
    )
    )
    ?>
    這里注意一點(diǎn),進(jìn)行相同key的合并,可以看出來(lái)相同key以及內(nèi)容形成了數(shù)組
    例子2 無(wú)索引數(shù)組與有索引數(shù)組
    <?php
    $array= array("site","域名","www.anypoetry.com");
    $array1 = array("forasp"=>"www.anypoetry.com","key"=>1,"temp"=>3);
    $forasp = array_merge_recursive($array,$array1);
    print_r($forasp);
    ?>
    輸出結(jié)果:
    Array
    (
    [0] => site
    [1] => 域名
    [2] => www.anypoetry.com
    [forasp] => www.anypoetry.com
    [key] => 1
    [temp] => 3
    )
    無(wú)索引的,看來(lái)數(shù)組合并array_merge_recursive進(jìn)行比較了key
    例子3 當(dāng)有一維數(shù)組
    <?php
    $array1= array("site","域名","anypoetry.com");
    $array2=array("site","anypoetry.com");
    $forasp = array_merge_recursive($array1,$array2);
    print_r($forasp);
    ?>
    輸出結(jié)果
    Array
    (
    [0] => site
    [1] => 域名
    [2] => anypoetry.com
    [3] => site
    [4] => anypoetry.com
    )
    看來(lái) array_merge_recursive是針對(duì)于有索引數(shù)組的,如果無(wú)索引同樣的value不能形成數(shù)組