現在の位置: ホーム> 最新記事一覧> PHPでceil()は文字列形式で数字を処理できますか?

PHPでceil()は文字列形式で数字を処理できますか?

M66 2025-06-23

ceil()関数の基本的な使用

CEIL()関数の基本的な構文は次のとおりです。

 ceil(float $num): float

この関数は数値パラメーターを取得し、値以上の最小整数を返します。例えば:

 echo ceil(3.2); // 出力 4

文字列形式の数字

PHPでは、文字列は数学操作で数値タイプに自動的に変換されます。つまり、浮動小数点数に解析できる文字列を渡すと、 ceil()は通常どおり動作します。

 echo ceil("4.7"); // 出力 5
 echo ceil("10"); // 出力 10

これは、フォーム入力を処理したり、パラメーターを取得したりする場合に特に役立ちます。

 $price = $_GET['price']; // URL: https://m66.net/product.php?price=9.3
echo ceil($price); // 出力 10

$ _get ['rice']が文字列型であっても、その形式が合法である限り、 ceil()は適切に機能します。


違法な弦はどうなりますか?

通過した文字列を数値に変換できない場合、PHPはそれを0として扱い、警告をトリガーします。

 echo ceil("abc"); // 出力 0,とトリガーPHP警告

同様に、混合文字(「12ABC」など)の場合、PHPは左から右へと解放されます。

 echo ceil("12abc"); // 出力 12

このPHPの耐性設計は、プログラムのクラッシュを減らすことができますが、それに頼る必要があるという意味ではありません。より良いアプローチは、is_numeric()を使用して最初に判断し、次に処理することです。

 $input = $_GET['amount']; // https://m66.net/order.php?amount=3.8

if (is_numeric($input)) {
    echo ceil($input);
} else {
    echo "無効な入力";
}