Heim > Artikel > Backend-Entwicklung > 用什么方法能改变数组的第一个下标,并且用dump()打印出来用的是新的下标。代码如下解决办法
用什么方法能改变数组的第一个下标,并且用dump()打印出来用的是新的下标。代码如下
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> array( 1 => array( 0 => array( 'created' => integer 1332383287 'updated' => integer 1332385146 'id' => string '30' (length=2) 'level' => integer 10 'tag_id' => integer 1 'status' => integer 0 'creator_uid' => integer 6 'assign_uid' => integer 6 'assign_history' => string '|6||6|6|' (length=8) 'title' => string '[iBay365] ' (length=10) 'context' => string ' ) ) ) //要求是 “1 => array(0=>array(... ...))” 这里的1 变成 php或者ajax等文字,之后再一次用dump()打印出来 //就变成了 “php => array(0=>array(... ...))” 请问用什么方法能办到,我想了半天实在想不出,手册也查了 //貌似没有这样的函数,往各位能帮忙,谢谢了
//$key = ……; $arr = array_merge(array($key => array_shift($arr)), $arr); <br><font color="#e78608">------解决方案--------------------</font><br>for一下吧。 <br><font color="#e78608">------解决方案--------------------</font><br>重新构建一个数组。 <br><font color="#e78608">------解决方案--------------------</font><br>
$ar1 = array(1 => array('111'), 6 => array('666'), 2 => array('222')); $ar2 = array('PHP', 'AJAX', 'MySQL'); $ar2 = array_combine($ar2, array_values($ar1)); echo '<pre class="brush:php;toolbar:false">'; print_r($ar2); <br><font color="#e78608">------解决方案--------------------</font><br>
[work@cq01-client-test02.vm.baidu.com csdn]$ php exchange.php Array ( [PHP] => Array ( [0] => index 1 ) [AJAX] => Array ( [0] => index 6 ) [MySQL] => Array ( [0] => index 2 ) ) [work@cq01-client-test02.vm.baidu.com csdn]$ cat exchange.php <?php $arr1 = array( 1 => array( "index 1" ), 6 => array( "index 6" ), 2 => array( "index 2" ) ); $arr2 = array( 'PHP' => array(), 'AJAX' => array(), 'MySQL' => array() ); $arr2 = array_combine(array_keys($arr2), array_values($arr1)); print_r($arr2); ?> <div class="clear"> </div>