🔖
【PHP】evalを使うサンプル
サンプル
こんな感じで、足し算などの算術演算子を使うケースでif文を使わずに書けるのが良い。
<?php
while($input_line = rtrim(fgets(STDIN))){
list($a, $op, $b) = explode(" ", $input_line); //2 + 4
if (!in_array($op, ["+","-","/","*"])){
return ;
}
echo eval("echo ($a $op $b);").PHP_EOL; // 6
}
evalを使うときの注意点。
警告
eval() は非常に危険な言語構造です。 というのも、任意の PHP コードを実行できてしまうからです。 これを使うことはおすすめしません。 いろいろ検討した結果どうしても使わざるを得なくなった場合は、細心の注意を払って使いましょう。 ユーザーから受け取ったデータをそのまま渡してはいけません。 渡す前に、適切な検証が必要です。
https://www.php.net/manual/ja/function.eval.php
Discussion