気軽に読めるPHP入門書・PHPスクリプトが動かないときの原因と対策などを紹介します。

  1. PHPエラーの原因と対策
  2. 25 view

mb_strpos関数やexplode関数で「Warning: Empty delimiter」と表示されるとき

「Empty delimiter」というWarningメッセージは、mb_strpos関数strpos関数explode関数などで表示されます。

mb_strpos関数やstrpos関数は、指定値に特定の値が含まれるか調べる関数です。

<?php
echo mb_strpos("あいう", "う");
?>

○実行結果
2

調べたい値が空の場合、「Empty delimiter」が表示されます。

<?php
echo mb_strpos("あいう", "");
?>
Empty delimiterエラー

Empty delimiterエラー

explode関数は、文字列を区切り文字で区切って配列を作成する関数です。

<?php
$str = "2013/5/28";
$a = explode("/", $str);
print_r($a);
?>

○実行結果
Array
(
[0] => 2013
[1] => 5
[2] => 28
)

区切り文字を空にしてしまうとEmpty delimiterエラーになります。

<?php
$str = "2013/5/28";
$a = explode("", $str);
print_r($a);
?>
 explode関数によるEmpty delimiterエラー

explode関数によるEmpty delimiterエラー

また、このエラーが発生する原因として、2つのパラメータを逆に指定してしまったことなどが考えられます。

たとえば、mb_strpos関数で次のように記述すべきところ、

<?php
$a = "千葉県我孫子市";
echo mb_strpos($a, "県");
?>

次のように間違えてパラメータを逆に指定してしまうと、調べる値が空になったときにエラーメッセージが表示されます。

<?php
$a = "";
echo mb_strpos("県", $a);
?>
「Empty delimiter」エラー

「Empty delimiter」エラー

PHPエラーの原因と対策の最近記事

  1. PHPの関数や変数の前にあるアットマークの意味は?

  2. 「http:// wrapper is disabled in the server co…

  3. php.iniの場所

  4. 「Warning: array_key_exists()」と表示されるとき

  5. 「Warning: A non-numeric value encountered」と表示…

関連記事

PAGE TOP