$arr = ['Governance->Policies->Prescriptions->CAS Alerts', 'Users->User Departments->Department Hierarchy', 'Settings->Registrar->Finance', 'Logs->Second Opinion Log'];
这是一个数组,我想把它转换成如下的字符串,字符串应该是一个,它只是一个字符串。第一个
pvcm50d11#
在迭代由箭头分隔的字符串数组时,分解箭头上的每个元素,将第一个值与其余元素分离,然后迭代分解中的其余元素,并将缓存的第一个值置于前面,然后将其推入结果数组。代码:(Demo)
$result = []; foreach ($arr as $string) { $parts = explode('->', $string); $parent = array_shift($parts); foreach ($parts as $child) { $result[] = "{$parent}->$child"; } } var_export($result);
xqkwcwgp2#
这里的解决方案:
<?php //This might help full $arr = ['Governance->Policies->Prescriptions->CAS Alerts', 'Users->User Departments->Department Hierarchy', 'Settings->Registrar->Finance', 'Logs->Second Opinion Log']; $result=""; $newline="<br>"; foreach($arr as $data){ $wordlist=explode('->',$data); $firstword=$wordlist[0]; $temp=''; foreach($wordlist as $key=>$value){ if($key > 0){ $temp.=$firstword."->".$value.$newline; } } $temp.=$newline; $result.=$temp; } echo $result; ?>
Output :
Governance->Policies Governance->Prescriptions Governance->CAS Alerts Users->User Departments Users->Department Hierarchy Settings->Registrar Settings->Finance Logs->Second Opinion Log
bvjxkvbb3#
$arr = ['Governance->Policies->Prescriptions->CAS Alerts', 'Users->User Departments->Department Hierarchy', 'Settings->Registrar->Finance', 'Logs->Second Opinion Log']; foreach ($arr as $path) { $path_elements = explode('->', $path); if (count($path_elements) > 1) { $path_head = $path_elements[0]; $path_tail = array_slice($path_elements, 1); foreach ($path_tail as $path_item) { echo $path_head, '->', $path_item, "<br>"; } echo "<br>"; } }
演示:https://onlinephp.io/c/9eb2d或者,使用JOIN()
$arr = ['Governance->Policies->Prescriptions->CAS Alerts', 'Users->User Departments->Department Hierarchy', 'Settings->Registrar->Finance', 'Logs->Second Opinion Log']; foreach ($arr as $path) { $path_elements = explode('->', $path); if (count($path_elements) > 1) { $path_head = $path_elements[0]; $path_tail = array_slice($path_elements, 1); echo $path_head, '->', join('<br>'. $path_head.'->',$path_tail), '<br><br>'; } }
演示:https://onlinephp.io/c/c1826
3条答案
按热度按时间pvcm50d11#
在迭代由箭头分隔的字符串数组时,分解箭头上的每个元素,将第一个值与其余元素分离,然后迭代分解中的其余元素,并将缓存的第一个值置于前面,然后将其推入结果数组。
代码:(Demo)
xqkwcwgp2#
这里的解决方案:
Output :
bvjxkvbb3#
演示:https://onlinephp.io/c/9eb2d
或者,使用JOIN()
演示:https://onlinephp.io/c/c1826