PHP を介して自分のサイトにアップロードされているすべてのファイルを検証したいと考えています。ファイルの内容を比較するために正規表現を使用していますが、期待どおりに機能していないようです。1 行に 1 語のみのファイルを受け入れたいです。
EXPECTED INPUT:
HP34930
HP09099
HP98899
UNACCEPTABLE INPUT:
HP89980 HP98798 HP09232
some other text
HP58089
これが私のコードです:
$texthandle = file($_FILES["textfile"]["tmp_name"]);
foreach ($texthandle as $textline)
{
if (!preg_match("/(HP\d+){1}/", $textline))
{
echo "Incorrect file format. Please provide a text file with 1 term per line.";
exit(0);
}
}
これが私が望む方法で検出されない理由を誰かが提案できますか?
私も試してみました
if (!preg_match("/^(HP\d+){1}$/", $textline))
しかし、期待どおりに機能していません。
ご協力いただきありがとうございます!