「Empty delimiter」というWarningメッセージは、mb_strpos関数やstrpos関数、explode関数などで表示されます。
mb_strpos関数やstrpos関数は、指定値に特定の値が含まれるか調べる関数です。
<?php echo mb_strpos("あいう", "う"); ?>
○実行結果
2
調べたい値が空の場合、「Empty delimiter」が表示されます。
<?php echo mb_strpos("あいう", ""); ?>
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); ?>
また、このエラーが発生する原因として、2つのパラメータを逆に指定してしまったことなどが考えられます。
たとえば、mb_strpos関数で次のように記述すべきところ、
<?php $a = "千葉県我孫子市"; echo mb_strpos($a, "県"); ?>
次のように間違えてパラメータを逆に指定してしまうと、調べる値が空になったときにエラーメッセージが表示されます。
<?php $a = ""; echo mb_strpos("県", $a); ?>