**之前看到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代码如下:**
//
// test2.php
// 函数
// php内置函数数组降维问题
// Created by 康博 on 2017-08-14.
$user = array(
"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(
array(1,2,3),
array(4,5,6)
);
var_dump($arr);
$result2 = array_reduce($arr, "array_merge", array());
var_dump($result2);
?>
详情请参考php文档https://secure.php.net/manual...