将php字符串与substr和strpos组合成一个字符串


Combine php strings with substr and strpos into one string

不确定是否有人问过这个问题,但是将三个字符串组合成一个字符串的最佳方法是什么?我试着添加一个数组,但它没有工作。

我的字符串是:$linktitle = get_the_title(); $linkt = substr($linktitle, 0, strpos($linktitle, ' —')); $linkt2 = substr($linktitle, 0, strpos($linktitle, ' –')); $linkt3 = substr($linktitle, 0, strpos($linktitle, ' |'));

$linktitle输出示例:

Facebook在Facebook内部创建类似youtube的视频功能| Re/codeWNYC将开设新的播客部门-纽约时报

我的尝试组合没有工作:$linkall = substr($linktitle, 0, strpos($linktitle, array(' —', –',' |')));

我想完成的是将, –|组合成一个数组,就像上面的例子(如果可能的话)。

如何使用内爆()数组包含您的字符串?

之类的
$pieces = array($string1, $string2, $string3);
$result = implode('', $pieces);

在你的情况下,这可能更有意义:

$pieces=array();
$pieces[] = substr($linktitle, 0, strpos($linktitle, ' —'));
$pieces[] = substr($linktitle, 0, strpos($linktitle, ' –'));
$pieces[] = substr($linktitle, 0, strpos($linktitle, ' |'));
$result = implode('', $pieces);
echo $result;

看起来,你在–

之前漏了一个引号
strpos($linktitle, array(' |', '–',' |')));