>  기사  >  백엔드 개발  >  求教php如何创建一个带键名的空数组,后期再赋值

求教php如何创建一个带键名的空数组,后期再赋值

WBOY
WBOY원래의
2016-06-23 13:55:211165검색

刚接触php,不知道能否先创建一个带键名的空数组,后期使用时在赋值。因为此数组的键名个数是变化的,不能直接定义数组。
我的想法如下:

...$strkeys= "'tagname'=>,'descr'=>,'unit'=>,";for($w= 1; $w<= $days; $w++){    $strkeys= $strkeys."'".$w."日'=>,";}$strkeys= $strkeys."'Total'=>";$excelres[]= array($strkeys);//print_r($excelres);

但使用print_r($excelres);后得到结果和想的不一样,如下:
Array ( [0] => Array ( [0] => 'tagname'=>,'descr'=>,'unit'=>,'1日'=>,'2日'=>,'3日'=>,'4日'=>,'5日'=>,'6日'=>,'7日'=>,'8日'=>,'9日'=>,'10日'=>,'11日'=>,'12日'=>,'13日'=>,'14日'=>,'15日'=>,'16日'=>,'17日'=>,'18日'=>,'19日'=>,'20日'=>,'21日'=>,'22日'=>,'23日'=>,'24日'=>,'25日'=>,'26日'=>,'27日'=>,'28日'=>,'29日'=>,'30日'=>,'Total'=> ) [1] => Array ( [0] => 'tagname'=>,'descr'=>,'unit'=>,'1日'=>,'2日'=>,'3日'=>,'4日'=>,'5日'=>,'6日'=>,'7日'=>,'8日'=>,'9日'=>,'10日'=>,'11日'=>,'12日'=>,'13日'=>,'14日'=>,'15日'=>,'16日'=>,'17日'=>,'18日'=>,'19日'=>,'20日'=>,'21日'=>,'22日'=>,'23日'=>,'24日'=>,'25日'=>,'26日'=>,'27日'=>,'28日'=>,'29日'=>,'30日'=>,'Total'=> ) ) 


回复讨论(解决方案)

首先你创建数组的格式就不对.

$strkeys= ['tagname'=>'',           'descr'=>'','unit'=>''];$days=30;for($w= 1; $w<= $days; $w++){    $strkeys[$w.'日']='';}$strkeys['Total']='';print_r($strkeys);

[] 格式是PHP 5.4 及以上版本才有的数组简写格式

$strkeys= array('tagname'=>'','descr'=>'','unit'=>'');$days = 31;for($w= 1; $w<= $days; $w++){	$strkeys[$w.'日'] = '';}$strkeys['Total'] = '';$excelres[]= $strkeys;print_r($excelres);



Array
(
    [0] => Array
        (
            [tagname] => 
            [descr] => 
            [unit] => 
            [1日] => 
            [2日] => 
            [3日] => 
            [4日] => 
            [5日] => 
            [6日] => 
            [7日] => 
            [8日] => 
            [9日] => 
            [10日] => 
            [11日] => 
            [12日] => 
            [13日] => 
            [14日] => 
            [15日] => 
            [16日] => 
            [17日] => 
            [18日] => 
            [19日] => 
            [20日] => 
            [21日] => 
            [22日] => 
            [23日] => 
            [24日] => 
            [25日] => 
            [26日] => 
            [27日] => 
            [28日] => 
            [29日] => 
            [30日] => 
            [31日] => 
            [Total] => 
        )

)

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.