どのコードがより効果的であるか疑問に思っていました。つまり、より高速な&を意味します。 私のクライアントが自分のウェブサイトにデータを投稿したとき、他の人の必要がないため、英数字以外のものを使用することはできません。 私の質問は、これに対してより高速で信頼性の高い例外がありますか?あるいは、私はこの目的のために例外から離れていなければなりませんか? ここに私のコードです。どのコードがより効果的ですか?
通常の方法 -
function checkStr ($str)
{
if (preg_match('/[^0-9a-zA-Z]/', $str) > 0))
{
return false;
}
else
{
return true;
}
}
if (checkStr($_POST['field']) == true)
{
//continue
}
else
{
echo "Invalid characters";
}
例外 - (など他の場合、ELSEIF、)より通常のプログラムフローコントロール機能よりも、それらに関連するオーバーヘッドを持っているので、純粋にそのから
function checkStr ($str)
{
if (preg_match('/[^0-9a-zA-Z]/', $str) > 0)
{
throw new Exception('Invalid characters');
}
return true;
}
try
{
checkStr($_POST['field']);
//no exception, continue with code
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
私の投票は、後で(例外クラスを使用して) – diEcho
あなたはそれをベンチマークしようとしましたか? – ianace
私は、 'スロー'の後に 'return'を書く必要がないと思う。 – diEcho