有时需要在项目之间添加字符串,不仅是在中间,还在前面或后面,还需要对零个项目进行正确的处理。
在这种情况下,仅仅在 implode() 旁边添加分隔符是不够的,所以我创建了这个小助手函数。
<?php
function wrap_implode( $array, $before = '', $after = '', $separator = '' ){
if( ! $array ) return '';
return $before . implode("{$after}{$separator}{$before}", $array ) . $after;
}
echo wrap_implode(['path','to','file.php'], '/');
$pattern = '#'. wrap_implode([4,2,2], '\d{', '}', '[-.]') .'#';
echo $pattern, "\n"; echo preg_replace( $pattern, '[REDACTED]', 'The UFO appeared between 2012-12-24 and 2013.01.06 every night.');
echo wrap_implode(['line','by','line'], '<b>', '</b>', '<br> ');
echo wrap_implode( ['<a href="">Menu Item 1</a>', '<a href="">Menu Item 2</a>',],
"<li>", "</li>\n",
"<li> | </li>\n",
);
?>