3

投稿GUIDと投稿タイトルを使用してwordpresでナビゲーションメニューを作成しました。タイトルの一部のみを取得しています。これを行うには、次のようにします。

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

ただし、次の警告が表示され、理由を理解できません。

wrong parameter count for strstr()

基本的に、文字列の前にある場合は、文字列からすべての文字を引き出しようとしています:

4

3 に答える 3

15

strstr使用しているPHPバージョンは、ドキュメントの3番目のパラメーターをサポートしていないため、エラーメッセージが表示されます。この関数を使用するには、PHP5.3.0以降が必要です。

サーバー上のPHPバージョンをアップグレードするか、関数呼び出しを次のようなものに置き換えることができます。

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

または、読みやすいヘルパー関数を使用する場合(デモ):

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

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

関連: 発生前に文字列を表示するstrstr

于 2011-08-05T10:22:04.237 に答える
0

3番目のパラメーターはPHP5.3.0で追加されました。実行中のPHPバージョンは5.3.0より前ですか?

于 2011-08-05T10:22:49.090 に答える
0
substr($v->post_title, 0, strpos($v->post_title, ':'));

PHPの下位バージョンで仕事をします。

于 2012-11-30T07:26:54.450 に答える