私はこれを学ぼうとしましたが、何らかの理由でそれはうまくいきません。
私は次のものを持っています:
コードでは次のとおりです。
<li><b>
text here:
</b>
5.3 x 6.0 x 40 metres
</li>
このHTMLは変数内にあり、$dimensionsと呼びましょう5.3 x 6.0 x 40 metres
。preg_match_allを使用して抽出しようとしています。理想的には、ディメンションと測定値を抽出していますが、結果をエコーするのに問題があります。一致のサイズが5であるにもかかわらず、毎回配列を文字列エラーに変換すると表示されます。何が起こっているのでしょうか。
preg_match_all('/\<li\>([0-9]*\.*[0-9]*)x([0-9]*\.*[0-9]*)x([0-9]*\.*[0-9]*)
\s*([a-zA-Z]*)\<\/li\>/',$dimensions,$matches,PREG_PATTERN_ORDER);
echo sizeof($matches);
echo($matches[0]);
編集:
以下の回答で示唆されているように、誰かがvar_dump($ matches)を使用して、配列に含まれるものを確認すると言いました... 4つの空の配列があることがわかり、次の質問が表示されます。preg_match_allの何が問題になっていますか?
array (size=5)
0 =>
array (size=0)
empty
1 =>
array (size=0)
empty
2 =>
array (size=0)
empty
3 =>
array (size=0)
empty
4 =>
array (size=0)
empty