将 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 Creates YouTube-Like Video Feature Inside Facebook | Re/code WNYC to Open New Podcast Division – The New York Times

我的组合尝试失败了: $linkall = substr($linktitle, 0, strpos($linktitle, array(' —', –',' |')));

我想要完成的是将 –| 组合成一个数组,如上例所示(如果可能的话)。

如何在包含字符串的数组上使用 implode()?

类似

$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(' |', '–',' |')));