日期:2014-05-17  浏览次数:20582 次

用什么方法能改变数组的第一个下标,并且用dump()打印出来用的是新的下标。代码如下
PHP code

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(... ...))”   请问用什么方法能办到,我想了半天实在想不出,手册也查了
//貌似没有这样的函数,往各位能帮忙,谢谢了



------解决方案--------------------
删掉再合并即可,直接实现此功能的函数大概没有吧

PHP code

//$key = ……;
$arr = array_merge(array($key => array_shift($arr)), $arr);

------解决方案--------------------
for一下吧。
------解决方案--------------------
重新构建一个数组。
------解决方案--------------------
PHP code
$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>';
print_r($ar2);

------解决方案--------------------
PHP code
[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);

?>