Maison >développement back-end >tutoriel php >用什么方法能改变数组的第一个下标,并且用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>
[[email protected] csdn]$ php exchange.php Array( [PHP] => Array ( [0] => index 1 ) [AJAX] => Array ( [0] => index 6 ) [MySQL] => Array ( [0] => index 2 ))[[email protected] 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>