• ベストアンサー

strstr関数

strstr関数で第三引数をつけると、引数の数がおかしいというメッセージが表示されます。 PHP Warning: Wrong parameter count for strstr() in 使っているのはPHP4.3系ですが、私の見間違いでしょうか? http://php.benscom.com/manual/ja/function.strstr.php また、strchrの別名となっていますが、どうして別名が存在するのでしょうか?

  • ne5
  • お礼率4% (5/124)
  • PHP
  • 回答数2
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • shimix
  • ベストアンサー率54% (865/1590)
回答No.2

マニュアルに書いているとおり、第三引数の「before_needleパラメータ」は6.0.0から追加された(される)ものです。 ∴ 今のところ、使える環境はありません。

その他の回答 (1)

  • asuncion
  • ベストアンサー率33% (2126/6286)
回答No.1

> strstr関数で第三引数をつけると、引数の数がおかしいというメッセージが表示されます。 問題の本質的な解決につながるかどうかはわかりませんが、 どういう内容の引数を与えているかを見せていただくことは可能でしょうか? できれば、スクリプトの当該箇所をコピー&ペーストしてくださるとありがたいです。

関連するQ&A

  • PHPのエラーの意味【strstr() Empty deli】

    PHP Warning: strstr() [<a href='function.strstr'>function.strstr</a>]: Empty delimiter in /home/xxx/ on line 384 というエラーが出ます。 一体どういう意味なのでしょうか? たまに出るのですが、 調べても明快な答えはわかりませんでした。 どうぞよろしくお願い致します。

    • ベストアンサー
    • PHP
  • PHP GD関数エラーについて

    PHP GD関数エラーについて Warning: Wrong parameter count for imagecopyresized() in /home/sites/heteml/xxx/web/domain/test.php on line 109 上記のようなエラーが出るのですが、どのようなエラーを示しているのでしょうか???

    • ベストアンサー
    • PHP
  • 関数の第二引数を省略可にする方法

    PHPのソースで <?php // -------------- function hogehoge($str,$strstr) { $s = $str; $s .= ' - '. $strstr; return $s; } echo hogehoge('Hello world','ようこそ!'); // -------------- ?> とすると Hello world - ようこそ! とでますが、 hogehogeの第二引数を省略して <?php // -------------- echo hogehoge('Hello world'); // -------------- ?> hogehogeの第二引数を省略するとエラーが出るので <?php // -------------- function hogehoge($str,$strstr) { $s = $str; $result_strstr = $strstr; // if ( $result_strstr != '' ) ) { $s .= ' - '. $strstr; } if ( isset( $result_strstr ) ) { $s .= ' - '. $strstr; } return $s; } echo hogehoge('Hello world'); // -------------- ?> とやってもエラーが出て 第二引数を省略可という関数を作ることができません。 どのようにすればよいのでしょうか?

    • ベストアンサー
    • PHP
  • 引数のある関数と引数のない関数の設定

     お世話になっております。 PHPのプログラミングで関数をつくる際に、引数を渡す関数と引数がない関数がありますが、すでに定義済みの関数のように、引数がある場合と引数がない場合の両方を取り扱うにはどうしたらよいでしょうか? function example ($a) { if ($a == 0 || $a == '') { print '引数なし'; } else { print $a; } } のような関数で、 example(); という感じで引数を入れないと、 Warning: Missing argument … というエラーがでてしまいます。関数を example(''); と呼び出すと大丈夫なのですが。。。 プログラマーにとって基本的なことだと思うのですが、調べてもなかなか出てこないので質問させて頂きました。どなたかわかる方がいたらしたらおしえてください。 よろしくお願いします! }

    • ベストアンサー
    • PHP
  • usort のユーザー定義比較関数の説明について

    PHPマニュアルにあるusortの説明がうまく理解できなくて悩んでいます。 そこでは、パラメータとなる比較関数について次のように書かれています。 「比較関数は、最初の引数と二番目の引数の比較結果を返します。最初の引数のほうが二番目の引数より大きい場合は正の数を、二番目の引数と等しい場合はゼロを、そして二番目の引数より小さい場合は負の数を返す必要があります。」 http://php.net/manual/ja/function.usort.php 「usort() の例」として提示されているのは以下です。 function cmp($a, $b) { if ($a == $b) { return 0; } return ($a < $b) ? -1 : 1; } $a = array(3, 2, 5, 6, 1); usort($a, "cmp"); この例のユーザー定義の比較関数cmpは、前述の説明の通りに書かれているので理解できます。 しかし、ユーザーページの投稿にもありますが、($a > $b) としたり、($a < $b) ? 1 : -1 のように返り 値を変えて降順(逆順)にソートするという使い方を普通に見かけます。 これは、「最初の引数のほうが二番目の引数より大きい場合は正の数を(……)二番目の引数より小さい場合は負の数を返す必要があ」るという説明とは矛盾しています。 「必要」とまで書いているのでかなり強い指示だと思います。英語版でも「must」となっているので翻訳上の問題はなさそうです。 また、「配列のソート」ページによるとソート順は「ユーザー定義」とあり、件の比較関数次第ということになっています。 http://www.php.net/manual/ja/array.sorting.php ということは、逆順であれ自然順であれ可能だとこれは示唆しているのだと思うのですが、やはり説明部分との矛盾が気になります。 ……どう捉えたらよいのでしょうか?

    • ベストアンサー
    • PHP
  • gettype関数 で型チェックをしたら何故ダメ?

    >型のチェックには、この関数ではなく is_* 関数を使います ▽PHP: gettype - Manual   http://php.net/manual/ja/function.gettype.php て書いているのですが、gettypeはなんで利用してはいけないのでしょうか?(もしくは奨励されていないのでしょうか) is_numeric() とか、とっても難しそうなのですが…

    • ベストアンサー
    • PHP
  • php 自作関数

    PHPでfunctionによって定義される関数を作っているのですが 引数なしで関数をつくることは可能なのでしょうか? 例えば function hello{ print "HelloPhp"; } 理想ではphp側でhello関数を呼び出せばHelloPhpと出力されます 実際の使い道は関数名が使い辛いので別の名前で関数名を定義したいんです 引数を与えてもいいのですがfunction側で引数が固定されるためphp側と毎回同じ変数:引数にならない 説明し辛いのですが 先ほど述べた理由で使いたいのですが、わかる方いらっしゃったらよろしくお願いします

    • 締切済み
    • PHP
  • header() 関数が必要になる場面は?

    http://php.net/manual/ja/function.header.php にheader() 関数の使い方が説明されていますが、 生の HTTP ヘッダを送信するというのは、オートで送信されているのを カスタマイズしてサーバーの動きを操作するということですよね。 この関数を利用するのは、どういった場合に必要になるのでしょうか。

    • ベストアンサー
    • PHP
  • pack関数

    今、少しずつPHPを勉強をしているのですが、 pack関数がわかりません。 http://www.php.net/manual/ja/function.pack.php にある例 1の結果がなぜ 0x12, 0x34, 0x78, 0x56, 0x41, 0x42 のように なるのですか? またこのバイナリ文字列を普通の文字にするには どうすればいいのですか? 参考になるサイト等がありましたらこれも一緒に 教えて下さい。

    • ベストアンサー
    • PHP
  • phpマニュアルの検索機能が機能しない件

    ど素人がphpを勉強中です。 関数の意味を調べたい時、 http://www.php.net/manual/ja/indexes.php 上記、関数マニュアル一覧から、Ctrl+Fの検索で、例えば『implode』で検索してみても、 http://php.net/manual/ja/function.implode.php このページが見つかりません。 わざわざGoogleから検索しないと出てきません。 とても不便です。 どうしたらいいでしょうか?

    • ベストアンサー
    • PHP