アプリ版:「スタンプのみでお礼する」機能のリリースについて

$response = 'h=id1004ブエノスアイレスhttps:';
if(preg_match('/id'.$_POST['id'].'(.*)https/u'.$response,$matches)){
print $matches[1];
}else{
echo "見つかりませんでした";
}
というプログラムを実行すると、
Warning: Undefined variable $matches in ~~~~~~~~
というエラー文が
if(preg_match('/id'.$_POST['id'].'(.*)https/u'.$response,$matches)){
の行で出てしまいます。

$_POST['id']の値は1004ですし、
if(preg_match('/id1004(.*)https/u'.$response,$matches)){
にしても同じエラーが出ます。

http://okumocchi.jp/php/re.php
という正規表現のチェックできるサイトで
/ap1004(.*)https/u
をチェックすると「ブエノスアイレス」が取得出来ています。

どこが不具合の原因かご教示お願いいたします。

A 回答 (1件)

プログラム2行目のpreg_matchの中で



パッと見、おかしいと思うのは、
$responseの前に「.」があるけれど、ここは「,」じゃないですか?
    • good
    • 0
この回答へのお礼

ありがとうございます。
恥ずかしいミスでした。
無事に解決しました。

お礼日時:2022/11/15 18:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!