理想情况下,完成一件简单的事情几乎没有什么麻烦。
我想做的是', '
在最后一个字之前用代替&
。
因此,基本上,如果$ddd
存在单词,则需要将其作为&DDD,如果$ddd
为空,则& CCC
从理论上讲,我要做的是以下几点:
当所有四个单词都不为空时为“ AAA,BBB,CCC和DDD”当三个不为空并且最后一个为“ AAA&BBB”时,则3个不为空而当两个不为空并且最后两个单词为空时为“ AAA&BBB”当只有一个返回非空时。
这是我的剧本
$aaa = "AAA";
$bbb = ", BBB";
$ccc = ", CCC";
$ddd = ", DDD";
$line_for = $aaa.$bbb.$ccc.$ddd;
$wordarray = explode(', ', $line_for);
if (count($wordarray) > 1 ) {
$wordarray[count($wordarray)-1] = '& '.($wordarray[count($wordarray)-1]);
$line_for = implode(', ', $wordarray);
}
请不要判断我,因为这只是尝试创建我上面已经描述过的东西。
请帮忙
我认为这是最好的方法:
function replace_last($haystack, $needle, $with) {
$pos = strrpos($haystack, $needle);
if($pos !== FALSE)
{
$haystack = substr_replace($haystack, $with, $pos, strlen($needle));
}
return $haystack;
}
现在您可以像这样使用它:
$string = "AAA, BBB, CCC, DDD, EEE";
$replaced = replace_last($string, ', ', ' & ');
echo $replaced.'<br>';
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句