strstr()的参数计数错误

Udd*_*ers 3 php regex string string-matching strstr

我在wordpres中使用帖子GUID构建了一个导航菜单,并且发布标题,我只占用了标题的一部分并且这样做我正在执行以下操作,

$casestudylist .= "<li class='subnav'><a href=".$v->guid.">". strstr($v->post_title, ":", true)."</a></li>";
Run Code Online (Sandbox Code Playgroud)

但是我收到以下警告并且无法解决原因:

wrong parameter count for strstr()
Run Code Online (Sandbox Code Playgroud)

基本上我试图从字符串中拉出所有字符,如果它们在a之前:.

hak*_*kre 15

您正在使用的PHP版本不支持strstrDocs的第三个参数,因此错误消息.您对该函数的使用需要PHP 5.3.0或更高版本.

您可以升级服务器上的PHP版本,也可以使用类似的方法替换函数调用:

substr($v->post_title, 0, strpos($v->post_title, ":"))
Run Code Online (Sandbox Code Playgroud)

或者如果你想使用一个更容易阅读的辅助函数(Demo):

str_before($v->post_title, ":");

function str_before($subject, $needle)
{
    $p = strpos($subject, $needle);
    return substr($subject, 0, $p);
}
Run Code Online (Sandbox Code Playgroud)

相关: strstr在出现之前显示字符串