**以前看到php的數組與java的集合。php數組的底層實現跟java集合相同,數組本質上是一個哈希表(HashTable,定義在$PHP_SOURCE_ROOT\Zend\zend_hash.h)。具體實現能夠查看 $PHP_SOURCE_ROOT\ext\standard\array.c 和 $PHP_SOURCE_ROOT\Zend\ZendAPI.c
確實在數據的處理上感受php比java好操做些。但卻沒有java集合那麼強大。
數組之多維數組降維度問題,首先想到for循環能夠遍歷一次使得下降維度。固然php爲咱們提供了不少高效的方法。底層也是實現了foreach代碼以下:**
<?php
//
// test2.php
// <array_reduce>函數
// php內置函數數組降維問題
// Created by 康博 on 2017-08-14.php
$user = array(java
'a' => array(100, 'a1'), 'b' => array(101, 'a2'), 'c' => array(102, 'a3'), 'd' => array(103, 'a4'), 'e' => array(104, 'a5'),
);
var_dump($user);數組
$result1 = array_reduce($user, 'array_merge', array());
var_dump($result1);函數
$arr = array(.net
array(1,2,3), array(4,5,6)
);code
var_dump($arr);
$result2 = array_reduce($arr, 'array_merge', array());
var_dump($result2);
?>
詳情請參考php文檔https://secure.php.net/manual...文檔