1

これで私を助けてくれることを願っています。私はこの問題について完全に困惑しています。どういうわけか私の preg_match_all は何も返しません。エラーまたは整数のいずれかを返すはずですが、そうではありません。Error_reporting がオンになっていて、すべてです。これで何も考えられません。

echo $string = '234,2345,34534,223'.'<br>';
echo preg_match_all('/,[0-9][0-9]/', $string).'<br>';

$string を見ることができますが、2 番目のエコーは何もしません。これについてもっと情報が必要になると思いますが、この問題がどこにあるのかわかりません。

編集:PHP 4.3の実行

4

2 に答える 2

1

preg_match_all見つかった一致数、または を返しますFALSE。結果を表示する場合は、3 番目のパラメーターである参照配列を渡しprint_rます。

echo $string = '234,2345,34534,223'.'<br>';
preg_match_all('/,[0-9][0-9]/', $string, $matches);
print_r($matches);

(また、あなたは$stringthenを使用していますが、それ$testは質問の単なるタイプミスだと思います。)

于 2013-06-26T14:18:34.207 に答える
0

preg_match_allキャプチャ配列として 3 番目のパラメーターを指定し、最初にその戻り値を確認する必要があります。次のように使用します。

if (preg_match_all('/,\d{2}/', $test, $match)) {
   print_r($match);
}
于 2013-06-26T14:19:37.003 に答える