PHP文字列の自己計算と数値計算の使い方を詳しく解説

伊谢尔伦
リリース: 2023-03-10 22:24:01
オリジナル
1835 人が閲覧しました

文字列を数値として扱う場合、結果と型は以下の通りです:

文字列に「.」、「e」、「E」が含まれず、その数値が整数の範囲にある場合(PHP_INT_MAX によって定義される) 内では、文字列は

integer として扱われます。それ以外の場合はすべて、値は浮動小数点数として扱われます。

文字列の先頭によって値が決まります。文字列が有効な数値で始まる場合は、その数値が使用されます。それ以外の場合、その値は 0 (ゼロ) です。有効な値は、オプションの符号、その後に続く 1 つ以上の数字 (小数点を含む場合もあります)、およびオプションの指数部分で構成されます。指数部は、「e」または「E」の後に 1 つ以上の数字が続くもので構成されます。

以下は整数に変換されます:

[+/-][0-9][*]
ログイン後にコピー

以下は

浮動小数点数値に変換されます:

[+/-][0-9][.][0-9][e/E][0-9][*]
ログイン後にコピー
$r = '123' + 1;
var_dump($r);// 输出结果 int(124)$r = '123.4' + 1;
var_dump($r);// 输出结果 float(124.4)$r = '1.5e4' + 1;
var_dump($r);// 输出结果 float(15001)$r = '123456789123456789' + 1;
var_dump($r);// 输出结果 float(1.2345678912346E+17)$r = '123abc' + 1;
var_dump($r);// 输出结果 int(124)$r = '123e1abc' + 1;
var_dump($r);// 输出结果 float(1231)$r = '123.abc' + 1;
var_dump($r);//输出结果 float(124)$r = '+123abc' + 1;
var_dump($r);// 输出结果 int(124)$r = '-123abc' + 1;
var_dump($r);// 输出结果 int(-122)$r = 'abc' + 1;
var_dump($r);// 输出结果 int(1)
ログイン後にコピー

必要なものが整数(浮動小数点数)であると判断したら、 intval( ) (floatval()) まず、他の数値を使用した計算を実行する前に、文字列を整数 (浮動小数点数) に変換します。

1つ。 PHP での数値文字列の加算

1. 2 つの文字列の先頭に有効な値がないか、数値文字列ではない場合、加算時に 2 つの文字列は 0 とみなされます。文字列の場合、有効数字が追加されます。

$a="abc";
$b="b01";
$a+$b是0
ログイン後にコピー

3/文字列に「.」、「e」、「E」が含まれる場合、float型の数値として処理されます。

$a="100";
$b="01a";
$a+$b=101;
ログイン後にコピー
$a="100";
$b="12.6a";
$a+$b=112.6;
ログイン後にコピー

2.php の 2 つの文字列を比較 (< > ==);

1.php の 2 つの

文字列

を比較して、それらが等しいかどうかを確認します。 (==) であるため、通常は (==) は使用されません。 ) 元の

データ型 を変更しますが、strcmp(str1, str2) 系列の関数 strcmp($str1,$str2); を使用します (strcmp は比較のために string 型に強制的に変換されます)。

しかし、(==) を比較に使用すると、結果は true になります

var_dump($a==$b);

そのため、(==) は通常、文字列の比較には使用されません。

さらに、数値と文字列を比較する場合、文字列は int 型または float 型に変換されます (numberic_string には「.」、「e」、「E」が含まれます)。

$a=&#39;123&#39;;
$b=&#39;123.&#39;;($b后多了一个小数点)
ログイン後にコピー

2. ( > < ) の比較

2-1: 2 つの文字列の比較の場合、対応する文字の ASCII コードを 1 つずつ比較します。

2-2: 数値を文字列と比較する場合、文字列はまず数値に変換されてから比較されます。

2-3: 2 つの数値文字列 (純粋な数値文字列) を比較する場合、2 つの文字列はまず数値に変換されてから比較されます。

すごい

でも

すごい

以上がPHP文字列の自己計算と数値計算の使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート