Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menukar rentetan kepada nombor dalam php
4 kaedah penukaran: 1. Gunakan fungsi intval() untuk menukar, sintaks "intval($val)"; 2. Gunakan fungsi settype() untuk menukar, sintaks "settype($val, "integer")" ;3. Tambahkan jenis sasaran "(int)" yang disertakan dalam kurungan sebelum pembolehubah, sintaksnya ialah "(int)$val"; 4. Gunakan operator "+" untuk menambah rentetan dan nombor 0, sintaksnya ialah "$ val + 0".
Persekitaran pengendalian tutorial ini: sistem windows7, versi PHP8, komputer DELL G3
php akan bernilai Dipaksa kepada jenis angka
Kaedah 1: Gunakan fungsi penukaran khusus intval()
intval() fungsi digunakan untuk mendapatkan integer bagi nilai pembolehubah. Fungsi
intval() mengembalikan nilai integer pembolehubah var dengan menggunakan penukaran asas yang ditentukan (lalai ialah perpuluhan). intval() tidak boleh digunakan dengan objek, jika tidak, ralat E_NOTICE akan dihasilkan dan 1 akan dikembalikan.
<?php header("Content-type:text/html;charset=utf-8"); $str = '123.456abc'; echo $str."<br>"; $int = intval($str); echo $int."<br>"; echo '变量 $int 的类型为:' . gettype($int) . '<br>'; echo '<hr>'; $str = 'abc123.456'; echo $str."<br>"; $int = intval($str); echo $int."<br>"; echo '变量 $int 的类型为:' . gettype($int) . '<br>'; echo '<hr>'; $str = '123.abc456'; echo $str."<br>"; $int = intval($str); echo $int."<br>"; echo '变量 $int 的类型为:' . gettype($int) . '<br>'; ?>
Nota: Apabila menggunakan fungsi intval() untuk menukar rentetan kepada nombor, anda hanya boleh mengekstrak nombor sebelum aksara Jika ia bermula dengan a huruf, nombor yang diekstrak ialah 0 .
Kaedah 2: Gunakan fungsi settype()
<?php header("Content-type:text/html;charset=utf-8"); $str = '123.456abc'; echo $str."<br>"; settype($str,"integer"); echo $str."<br>"; echo '修改后的类型为:' . gettype($str) . '<br>'; echo '<hr>'; $str = 'abc123.456'; echo $str."<br>"; settype($str,"integer"); echo $str."<br>"; echo '修改后的类型为:' . gettype($str) . '<br>'; ?>
Arahan:
settype() Fungsi digunakan untuk menetapkan pembolehubah $var kepada jenis $type yang ditentukan. Sintaks:
settype ( $var ,$type )
$type Nilai tetapan:
"boolean" (atau "bool", bermula daripada PHP 4.2.0)
"integer" (atau "int" sejak PHP 4.2.0)
"float" (hanya mungkin sejak PHP 4.2.0) Gunakan, untuk "double" digunakan dalam versi lama kini tidak digunakan lagi)
"rentetan"
"array"
"objek"
"null" (dari PHP 4.2.0 dan seterusnya)
settype() fungsi Akan menukar jenis pembolehubah itu sendiri .
Kaedah 3: Tambah jenis sasaran "(int)" atau "(integer)" yang disertakan dalam kurungan sebelum pembolehubah yang hendak ditukar
<?php header("Content-type:text/html;charset=utf-8"); $str = '123.456abc'; $int = (int)$str; echo $int."<br>"; echo '变量 $int 的类型为:' . gettype($int) . '<br>'; ?>
Kaedah 4: Tambahkan rentetan dan nombor 0 menggunakan operator "+"
<?php header("Content-type:text/html;charset=utf-8"); $str = '123abc'; echo $str."<br>"; $int = $str+0; echo $int."<br>"; echo '变量 $int 的类型为:' . gettype($int) . '<br>'; ?>
Kerana PHP adalah bahasa yang ditaip lemah, penukaran jenis angka yang tidak kelihatan akan dilakukan.
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk menukar rentetan kepada nombor dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!