array_merge()函數在php中是對數據進行合并的,可以把多個數組合成一個數組,并且不改變原數組的值了,但今天我在使用array_merge合并數組時碰到幾個小細節上的問題,下面我舉例子給各位朋友看看.
1.array_merge()合并
例子,代碼如下:
- $array = array('a'=>'bb');
- $array2 = array('b'=>'cc');
- $array3 = array_merge($array,$array2);
- //輸出結果為
- Array ( [a] => bb [b] => cc )
上面因為都是數組就沒有問題了,假如我們把$array 設置不是數組看看什么情況,代碼如下:
- $array = 1;//array('a'=>'bb');
- $array2 = array('b'=>'cc');
- $array3 = array_merge($array,$array2);
- print_r( $array3 );
運行后結果:
Warning: array_merge() [function.array-merge]: Argument #1 is not an array in E:test1.php on line 4
告訴我們必須是要一個數組了,那么這個我就有多種方法來解決.
1.使用is_array() 進行判斷了,但是會發現如果合并數組比較多一個個判斷不合理,后來發現可以轉換數據類型,代碼如下:
- $array = 1;//array('a'=>'bb');
- $array2 = array('b'=>'cc');
- $array3 = array_merge((array)$array,(array)$array2);
- print_r( $array3 );
- //輸出結果不報錯了
- //開源代碼Vevb.com
- Array ( [0] => 1 [b] => cc )
他自動把數字1轉換成了數組了,所以大家在使用時一定要注意這些細節.
新聞熱點
疑難解答