繁体   English   中英

php将关联数组替换为正常数组作为函数的结果

[英]php get associative array in place normal array as result of function

我创建了返回普通数组的函数:

function get_list_array () {

                $list_object = get_list_objects();
                foreach ( $list_object as $every_object) {
                            $list_array[] = array (
                                          "wprm_$every_object->name" => array (
                                                     'name'         => _x("$every_object->label", , 'test'),
                                                      'singular_name' => _x("$every_object->name", , 'test'),));                                             
                      }

                        return $list_array ;

                         }

    var_dump ($list_array);

    array(2) { 
           [0]=> array(1) { ["object_1"]=> array(2) {
                                               ["name"]=> string(10) 
     "name_object1" ["singular_name"]=> string(15) "singular_name_object1" } } 
           [1]=> array(1) { ["object_2"]=> array(2) {
                                               ["name"]=> string(4) 
     "name_object2" ["singular_name"]=> string(10) "singular_name2" } } }

我想要这样的关联数组就位:

  array ("object_1" => array (["name"]=> string(10) "name_object1" 
  ["singular_name"]=> string(15) "singular_name_object1" } ,
                               "object_2" => array(2) {
                                           ["name"]=> string(4) 
  "name_object2" ["singular_name"]=> string(10) "singular_name2" } } }

任何想法我如何可以修改我的功能,以便获得第二个输出。

通过执行以下操作,可以将实际需要的数组包装到另一个数组中:

$list_array[] = array(
    "wprm_$every_object->name" => array(

相反,您应该直接将新数组直接分配给$list_array

$list_array["wprm_$every_object->name"] = array(

另外,请考虑一下如何缩进代码,因为 您的函数可能如下所示:

function get_list_array () {
    $list_object = get_list_objects();

    foreach ($list_object as $every_object) {
        $list_array["wprm_$every_object->name"] = array(
            'name'          => _x("$every_object->label", , 'test'),
            'singular_name' => _x("$every_object->name", , 'test'),
        );
    }

    return $list_array;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM