我想要做的是从我的数组中的键中删除-
短划线,然后将其重新组合,并用空格代替-
。
示例数组
$pages = array(
'Administrator' => array(
'network-administrator' => array('title' => 'Network '.$li_1, 'description' => 'Network '.$li_1.' '.$temp_content, 'post' => '<p>Network '.$li_1.' '.$temp_content.'.</p>'),
'database administrator' => array('title' => 'Database '.$li_1, 'description' => 'Database '.$li_1.' '.$temp_content, 'post' => '<p>Database '.$li_1.' '.$temp_content.'.</p>'),
),
'Analyst' => array(
'business systems analyst' => array('title' => 'Business Systems '.$li_2, 'description' => 'Business Systems '.$li_2.' '.$temp_content, 'post' => '<p>Business Systems '.$li_2.' '.$temp_content.'.</p>'),
'data-analyst' => array('title' => 'Data '.$li_2, 'description' => 'Data '.$li_2.' '.$temp_content, 'post' => '<p>Data '.$li_2.' '.$temp_content.'.</p>'),
),
);
正如您所看到的,某些键中有一个短划线-
。有些已经有空格。有破折号的那些需要用空格替换。
我知道这听起来很奇怪,&#34;为什么不用硬盘对它们进行硬编码&#34;对?好吧,我需要两个数组来检查我的PHP脚本中的条件。
我不确定如何开始爆炸阵列,移除破折号然后将其重新组合在一起。
我认为会是这样的。
explode('-', $pages[ucfirst($occupation)];
然后内爆
implode(' ', $pages[ucfirst($occupation)]);
但是我知道在顶级数组中没有获得所有子数组。
不知道该怎么做。
非常感谢帮助!
答案 0 :(得分:1)
好了,因为你不能引用键,你可以将它们转移到一个新的键,然后只需简单地替换这些键(如果结构是固定的):
$new_pages = array();
foreach($pages as $key => $values) {
foreach($values as $k => $v) {
$k = str_replace('-', ' ', $k);
$new_pages[$key][$k] = $v;
}
}