Heim >Backend-Entwicklung >PHP-Problem >Welche Zahlentypen werden von PHP konvertiert?

Welche Zahlentypen werden von PHP konvertiert?

coldplay.xixi
coldplay.xixiOriginal
2020-07-10 10:00:253357Durchsuche

Zu den PHP-Konvertierungszahlentypen gehören: 1. Automatische Typkonvertierung, Zeichenfolgen werden in Zahlen konvertiert, Ganzzahlen werden in Gleitkommazahlen konvertiert, Gleitkommazahlen werden in Ganzzahlen mit verworfenem Dezimalpunkt konvertiert und Nullwerte werden in Zeichenfolgen konvertiert; 2. Starke Typkonvertierung, [intval()] wird in einen Ganzzahltyp konvertiert, [floatval()] wird in eine Gleitkommazahl konvertiert.

Welche Zahlentypen werden von PHP konvertiert?

PHP konvertiert numerische Typen:

PHP ist im Gegensatz zu Java, C++ und anderen Sprachen eine schwach typisierte Sprache. Der Unterschied zwischen stark typisierten Sprachen besteht darin, dass schwach typisierte Sprachen Datentypen automatisch konvertieren, während stark typisierte Sprachen Typen manuell deklarieren müssen.

1) Automatische Typkonvertierung , fünf Datentypen, vier Skalartypen und Null können durch Operationen automatisch konvertiert werden. Boolesche Werte nehmen an Operationen teil

true ---> 1 false ---> 0

  • String- und Zahlenoperationen, Strings werden vor der Operation zunächst in Zahlen umgewandelt.

  • Konvertieren Sie die Zeichenfolge in eine Zahl, beginnend am Anfang und endend mit dem ersten Zeichen, das keine Zahl ist (der nicht übereinstimmende Inhalt wird gelöscht).

  • Ganzzahlen werden in Gleitkommazahlen umgewandelt und die Genauigkeit ändert sich nicht.

  • Konvertieren Sie eine Gleitkommazahl in eine Ganzzahl, verwerfen Sie den Dezimalpunkt und behalten Sie den ganzzahligen Teil bei.

  • Wenn die Gleitkommazahl außerhalb des Ganzzahlbereichs liegt, ist die Antwort undefiniert.

  • Nullwert wird in eine Zeichenfolge konvertiert, die eine leere Zeichenfolge ist.

  • //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) Starke Typkonvertierung

Verwenden Sie Klammern und den Zieltyp zum Konvertieren

(int)(integer)
 (bool)(boolean)
 (float)(real)
  (string)
  (array)
  (object)

Typkonvertierungsfunktion verwenden

Funktion zum dauerhaften Konvertieren des Typs (Hervorhebung)settype()

Der erste Parameter ist die Variable, deren Typ Sie ändern möchten

Der zweite Parameter ist der Typname, den Sie ändern möchten

In Ganzzahl konvertierenintval()
In Gleitkommazahl konvertierenfloatval()
In String konvertierenstrval()

<?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);

Verwandte Lernempfehlungen:

PHP-Programmierung vom Einstieg bis zur Kompetenz

Das obige ist der detaillierte Inhalt vonWelche Zahlentypen werden von PHP konvertiert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

In Verbindung stehende Artikel

Mehr sehen