当谈到php中的数组时,我似乎遇到了心理问题。我不知道为什么,我的阵列看起来像这样:
$elementOptions = array(
array(
'type' => 'Text',
'name' => 'test' ,
'isRequired' => true,
'attributes' => array(
'placeholder' => 'content'
),
'subFormName' => 'content'
);
我为每个循环都有一个:
foreach ($options as $key => $value) {
if (is_array($value)) {
//do something else
} else {
//do something
}
}
问题是,如果我在if(isarray()){}中进行var转储,我得到以下内容:
array(1) {
["placeholder"]=>
string(7) "content"
}
array(4) {
["type"]=>
string(4) "Text"
["name"]=>
string(4) "test"
["isRequired"]=>
bool(true)
["attributes"]=>
array(1) {
["placeholder"]=>
string(7) "content"
}
}
现在问题是 - 我不想在var转储中使用以下内容:
array(1) {
["placeholder"]=>
string(7) "content"
}
我不确定,根据上面的“数据结构”,这个'占位符'=> 'content'被认为是一个数组.....在任何一种情况下我都不希望它作为var转储的数组的一部分......它应该只是该var转储中的第二个数组。
那就是你们进来的地方,为什么地方持有者不应该回来作为阵列(TMK - 据我所知)。
答案 0 :(得分:0)
“占位符”=>“内容”不被视为数组或作为数组返回,它是数组中的一对,您称之为“属性”
array(4) {
["type"]=>
string(4) "Text"
["name"]=>
string(4) "test"
["isRequired"]=>
bool(true)
["attributes"]=> // this is your array
array(1) { // contents of this array are...
["placeholder"]=> // this is a key
string(7) "content" // this is a variable
} // array ends
}