1

「boards/」、「localhost」、「mysql」、「0」、「1」、「Testing Board」、「PLAIN」などの文字列があります。

フォームから投稿データとして受け取ります。これらのいくつかはマルチバイト文字を持つことができますが、使用されるテスト文字列はどれもマルチバイト文字を持ちません。

私はそれらを実行しますif (!preg_match('/^./u', $str))

ほとんどの場合、if check は false と評価されます。つまり、preg_match は 1 を返します。ただし、true と評価される場合もあります。つまり、その preg_match から 0 になります。

真 (0) は完全にランダムなようです。ただし、文字列の 1 つが true と評価された場合、それらはすべて true と評価されます。それはすべてか、まったくないかのどちらかです。

その一見ランダムな振る舞いについて、何らかの説明がある人はいますか? そして、おそらくそれを修正するための解決策はありますか?

乾杯ヤリ

4

1 に答える 1