PHP的数组可谓神奇的编程物种, 搞了这么多年编程, php的数组可真是方便至极。但开发过程中会有把数组写死在程序中, 而非数据库里的情况。那么大规模的数组就没办法用sql或者redis语句来操作了。
实际业务场景中, 遇到的需求情况特别多, 这里只是举例说明。比方我们要把数组当中涉及key和value相同的元素去掉, 并且返回源代码
$a = array( '一样的' => '一样的', '不一样的' => '不二样的', ); $b = []; foreach($a as $k => $v) { if($k == $v) { continue; } $b[$k] = $v; } echo "array(\n"; print_src($b); function print_src($arr, $indent = ' ') { foreach($arr as $k => $v) { if(is_array($v)) { echo sprintf("%s\"%s\" => array(\n", $indent, $k); print_src($v, $indent . ' '); echo $indent . "),\n"; } else { echo sprintf("%s\"%s\" => '%s',\n", $indent, $k, $v); } } } echo ");";
这样打印出来的效果就是你要的新数组源码。