我有一个问题,比如我有一个多维数组,如果内部数组包含'edit',我想删除父数组 数组是这样的
[fields] => Array
(
[0] => Array
(
[header] => Array
(
[fieldName] => edit
[displayName] => Edit
[width] => 40
[group] => 0,1,2,3
[cssClass] => dgAssetsCentered
)
[visibility] => Array
(
[showOnStart] => 1
[editable] =>
)
[cell] => Array
(
[type] => link
[params] => Array
(
[label] => Edit
)
)
[sort] => Array
(
[sortable] => 1
)
[validator] => Array
(
[name] =>
[params] =>
)
)
[1] => Array
(
[header] => Array
(
[fieldName] => OFFERID
[displayName] => Offer Id
[group] => 0
我想删除数组0,因为内部数组包含'edit'我能删除[header]数组,不能删除[0] array.please建议。
感谢 亚历克斯。
答案 0 :(得分:1)
foreach($fields as $key => $field)
{
if(isset($field['header']['fieldName']) && $field['header']['fieldName'] == 'edit')
unset($field[$key]);
}
UPD: 此外,如果您想删除数组,如果任何元素等于'edit',请尝试此算法:
foreach($fields AS $key => $array)
{
foreach($array as $innered)
{
if(array_search('edit', $innered))
{
unset($fields[$key]);
break;
}
}
}
答案 1 :(得分:1)
unset(fields);
将清除整个数组。
unset(fields[0]);
将清除字段数组