ホームページ > バックエンド開発 > PHPの問題 > PHPが変換する数値の型は何ですか?

PHPが変換する数値の型は何ですか?

coldplay.xixi
リリース: 2023-03-02 09:08:01
オリジナル
3368 人が閲覧しました

php のデジタル型の変換には次のものが含まれます: 1. 自動型変換、文字列は数値に変換され、整数は浮動小数点数に変換され、浮動小数点数は小数点が破棄された整数に変換され、NULL 値が変換されます。 2. 強力な型変換、[intval()] は整数型に変換され、[floatval()] は浮動小数点数に変換されます。

PHPが変換する数値の型は何ですか?

PHP 変換数値タイプは次のとおりです:

PHP は、Java、C、および他の言語とは異なり、弱い型指定言語です。強く型付けされた言語の違いは、弱く型付けされた言語はデータ型を自動的に変換するのに対し、強く型付けされた言語は手動で型を宣言する必要があることです。

1) 自動型変換、5つのデータ型、4種類のスカラーとnullを演算により自動変換できます。 ブール値は操作に参加します

true ---> 1 false ---> 0
ログイン後にコピー

  • 文字列と数値の操作。文字列は操作の前にまず数値に変換されます。

  • 文字列を先頭から数値に変換し、数値ではない最初の文字で終了します (一致しない内容はクリアされます)。

  • 整数は浮動小数点数に変換され、精度は変わりません。

  • 浮動小数点数を整数に変換し、小数点を切り捨て、整数部分を保持します。

  • #浮動小数点数が整数の範囲外の場合、答えは不定になります。
  • null 値は空の文字列である文字列に変換されます。
  • //bool to int
    var_dump(true + 1);//2 true->1
    var_dump(false + 1);//1 false->0
    var_dump(null + 1);// 1 null-> 0
    echo &#39;<hr/>&#39;;
    // bool to float
    var_dump(true + 1.0);// float 2
    var_dump(false + 1.0);// float 1 var_dump(null + 1.0);// float 1
    echo &#39;<hr/>&#39;;
    //string to int
    var_dump(&#39;123&#39; + 1);//124 &#39;123&#39;->123
    var_dump(&#39;abc123&#39; + 1);//1 &#39;abc123&#39;->0
    var_dump(&#39;123abcdefggggggggggg;8000&#39; + 1);//124
    var_dump(&#39;a123&#39; + 1);//1
    var_dump(&#39;1a123&#39; + 1);//2
    //php7.0版本所有进制都不转
    var_dump(&#39;077abc&#39;+1);// 78 077->77 八进制不转换
    var_dump(&#39;0b11abc&#39;+1);//1 //0b 不转换
    var_dump(&#39;0xffhsahahhahah&#39;+1);//1 0x不转换
    //php 5.6以下都会转换为 0xff->255
    echo &#39;<hr/>&#39;;
    //string to float
    var_dump(&#39;1.234abcdef&#39;+ 1.0);//2.234
    var_dump(&#39;1.234E3&#39;+1.0);//1235
    var_dump(&#39;1e5&#39;+1.0);//2 100001
    var_dump(&#39;1E-5&#39;+1.0);//1.00001
    ログイン後にコピー
2) 強力な型変換

括弧と変換対象の型を使用します

(int)(integer)
 (bool)(boolean)
 (float)(real)
  (string)
  (array)
  (object)
ログイン後にコピー

型変換関数を使用します

settype()

永続変換型関数(キーポイント)最初のパラメータは変更したい型の変数です

2 番目のパラメータは型です変更したい名前


intval()
整数型に変換floatval()
浮動小数点数に変換strval()
文字列に変換

<?php
  $a = 1;
  var_dump($a);
  var_dump((int)$a);
  var_dump((integer)$a);
  var_dump((bool)$a);
  var_dump((float)$a);
  var_dump((real)$a);
  var_dump((string)$a);
 var_dump((array)$a);
 var_dump((object)$a);
 var_dump($a);
 var_dump($a);
 var_dump($a);
 var_dump($a);
 var_dump($a);
 echo &#39;<hr/>&#39;;
 $b = 100;
 var_dump($b);
 //下面函数是永久有效的类型转换
 settype($b,&#39;string&#39;);
 var_dump($b);
 var_dump($b);
 var_dump($b);
 var_dump($b);
 var_dump($b);
 var_dump($b);
 echo &#39;<hr/>&#39;;
//下⾯的函数也是当次有效 和最开始的强制类型转换一样 只不过语法不同而已
 $m = 200;
 var_dump(intval($m));
 var_dump(floatval($m));
var_dump(strval($m));
 var_dump($m);
 var_dump($m);
 var_dump($m);
ログイン後にコピー

関連する学習の推奨事項:
PHP プログラミングの入門から熟練度まで

以上がPHPが変換する数値の型は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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