wrong parameter count for strstr()

2019-02-18 22:16发布

I have built a nav menu in wordpres using a posts GUID, and post title, I am taking only part of the title and to do this I am doing the following,

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

however I get the following warning and cannot work out why:

wrong parameter count for strstr()

Basically I am trying to pull all the characters out of a string if they are before a :.

3条回答
女痞
2楼-- · 2019-02-18 22:57

The PHP version you're using does not support the third parameter of strstrDocs, hence the error message. Your usage of the function requires PHP 5.3.0 or higher.

You can either upgrade the PHP version on your server or you replace the function call with something similar like:

substr($v->post_title, 0, strpos($v->post_title, ":"))

or if you want to use a helper function which is easier to read (Demo):

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

function str_before($subject, $needle)
{
    $p = strpos($subject, $needle);
    return substr($subject, 0, $p);
}

Related: strstr to show string before occurance

查看更多
【Aperson】
3楼-- · 2019-02-18 23:04

The third parameter was added in PHP 5.3.0. Is your running PHP version lower than 5.3.0?

查看更多
不美不萌又怎样
4楼-- · 2019-02-18 23:08
substr($v->post_title, 0, strpos($v->post_title, ':'));

Will do the job on lower version of PHP.

查看更多
登录 后发表回答