• ベストアンサー

エラーの意味教えてください

Warning: REG_EMPTY:@empty (sub)expression in...143 このエラーなんですけど指定された行は if(!ereg("$tt",$no)){ です。 phpdev5

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

  • ベストアンサー
  • hisappy
  • ベストアンサー率46% (184/392)
回答No.3

while文中で実行されているということならば、 そのエラーが何周目で出てきているかも重要です。 おそらく一発目、$ttの中身が空っぽの状態ではないでしょうか?

pepepopo
質問者

お礼

回答有り難う御座います。 解決致しました! 本当に皆さん有り難う御座いました^^ やはり一発目で$ttが空の時にエラーが出ていました・・・ そんな事にも気づかず申し訳ありませんでした。

その他の回答 (2)

  • cojirou
  • ベストアンサー率50% (59/117)
回答No.2

お邪魔致します。 >Warning: REG_EMPTY:@empty (sub)expression in...143 これは、 ereg ( string pattern, string string, array [regs]) のstring patternがEMPTYであると言っているのだと思います。 ANo.1様の仰っているように$ttの内容が定義に則していないと考えられます。 詳しくはマニュアルをご参照ください。 ちなみに、もしも$ttの中に$noが現れるかどうかを知りたいなら、 eregではなくstrstrを用いては。 ご参考までに。

参考URL:
http://jp2.php.net/manual/ja/function.ereg.php
pepepopo
質問者

お礼

回答有り難う御座います。 例えばこのようになってるんですが if(!ereg("23|13|1|3",3)){ この文で間違えてる所はありますでしょうか? あとstrstrですと試してみたんですが$ttの中に何個もの数字を入れる事はできるんでしょうか?例えば23と31が$ttの中に入っている場合2とか3もその文字列に入っていると判断されてしまいます。 マニュアルも見ているんですが初心者なので半分理解できるかどうかなので質問ばかりですいません。 あと上のeregを使った文で結果はなんとか求めている物が出たんですがエラー表示が出てしまうんです。

  • Dpop
  • ベストアンサー率51% (279/544)
回答No.1

$tt の内容を示してください。 または、 print $tt. "<br>\n"; if(!ereg("$tt", $no)){ を実行してみて下さい。 そして、$tt に定義されている正規表現が正しいか(その前に、チャント記述されているか。)確認してみて下さい。 それで解決すると思います。

pepepopo
質問者

補足

回答有り難う御座います。 $ttの内容は 31|29|5|34|23 とこのように数字が入っています。 while文の中にあり$ttの内容もどんどん増えていきます。 お返事遅くなり申し訳ありません。

関連するQ&A

専門家に質問してみよう