0

特定の写真一時検証を使用して写真共有システムを作成しています。基本的に、入力ファイルの送信時に、写真は「temp」というディレクトリにロードされます。

このような特定の文字列でファイルの名前を変更します3_1383310890_1709373616.jpg 。ここで、3 はuser_id 、 1383310890 は日付、1709373616 はランダムなコード名です。

ここで、ユーザーがフォームを完成させない場合...次回、そのユーザーIDの一時ファイルが存在するかどうかを確認する必要があり、このように情報を取得しますが、なぜ機能しないのかわかりません。

$string = 'temp/3_1383310890_1709373616.jpg';

    preg_match_all('/^[0-9]+_/',$string,$match);

    $arr = array('user' => $match[1][0], 'date' => $match[2][0], 'photo' => $match[3][0]);
    echo json_encode($arr);

null オブジェクトを返します

{"user":null,"date":null,"photo":null}

何か案は ?

4

1 に答える 1

0

^ 文字。この場合、文字列の先頭から一致することを意味します。私は使うだろう:

$string = 'temp/3_1383310890_1709373616.jpg';
preg_match('/^temp\/([0-9]+)_([0-9]+)_([0-9]+)\.jpg$/',$string,$match);
$arr = array('user' => $match[0], 'date' => $match[1], 'photo' => $match[2]);
echo json_encode($arr);
于 2013-11-30T21:46:45.110 に答える