Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer
Langkah penukaran: 1. Gunakan pernyataan foreach untuk melintasi tatasusunan dengan merujuk gelung, dengan sintaks "foreach ($array sebagai &$value){//loop body blok pernyataan;}" 2. Dalam badan gelung , gunakan fungsi is_int() untuk menentukan sama ada elemen "$value" ialah jenis integer Jika tidak, gunakan fungsi intval() untuk menukarnya kepada jenis int(. $value)){$value=intval($ value);}".
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3
PHP ialah bahasa pengaturcaraan jenis data yang lemah , jadi pembolehubah Tatasusunan dalam PHP boleh menyimpan sebarang bilangan data dari sebarang jenis dan boleh melaksanakan fungsi struktur data seperti timbunan, tindanan dan baris gilir dalam jenis data lain yang kukuh.
Ringkasnya, tiada sekatan pada jenis elemen tatasusunan PHP, yang boleh berupa nombor (integer dan perpuluhan), rentetan, nilai Boolean, tatasusunan, objek Objek dan jenis lain.
Jadi bagaimana anda membuat elemen dalam tatasusunan php semua jenis int? Hanya tukar elemen yang bukan jenis int kepada jenis integer Berikut ialah langkah pelaksanaan.
Langkah penukaran:
Langkah 1. Gunakan pernyataan foreach untuk melintasi tatasusunan melalui gelung rujukan
foreach ($array as &$value){ //循环体语句块; }
Lintas tatasusunan $array yang diberikan, dan tetapkan nilai tatasusunan semasa kepada $value dalam setiap gelung.
Secara amnya, apabila menggunakan pernyataan foreach untuk melintasi tatasusunan, ia beroperasi pada sandaran tatasusunan dan secara amnya tidak menjejaskan tatasusunan itu sendiri.
Tetapi jika anda menggunakan gelung rujukan (tambah & sebelum $value, supaya pernyataan foreach akan menetapkan nilai dengan rujukan dan bukannya menyalin nilai), maka operasi pada tatasusunan dalam badan gelung akan menjejaskan tatasusunan itu sendiri.
Langkah 2: Dalam badan gelung, tukar elemen kepada jenis integer int
Gunakan fungsi is_int() untuk menentukan sama ada elemen $value adalah jenis integer. Jika tidak, gunakan fungsi intval() untuk menukarnya kepada jenis int
if(!is_int($value)){ $value=intval($value); }
Kod pelaksanaan:
<?php header("content-type:text/html;charset=utf-8"); function f($arr){ var_dump($arr); foreach($arr as &$v){ if(!is_int($v)){ $v=intval($v); } } unset($v); // 最后取消掉引用 echo "转换后"; var_dump($arr); } ?>
Fungsi panggilan
$a = array(11,"254",12,3.14,3,5); f($a);
$b = array(FALSE,"254",3.14,3,null,TRUE); f($b);
Penerangan fungsi:
1. is_int () fungsi
is_int() digunakan untuk mengesan sama ada pembolehubah itu adalah integer Jika pembolehubah yang ditentukan ialah integer, TRUE, jika tidak, ia akan mengembalikan FALSE.
Fungsi Alias (): is_integer(), is_long()
Nota: Jika anda ingin menguji sama ada pembolehubah ialah nombor atau rentetan nombor (seperti input borang, mereka Biasanya rentetan), is_numeric() mesti digunakan.
2. Fungsi intval()
intval() membulat secara langsung, membuang perpuluhan dan mengekalkan integer
<?php $str="123.9"; var_dump($str); $int=intval($str); //转换后数值:123 var_dump($int); ?>
Pengetahuan lanjutan: Tukar nilai kepada jenis int (integer)
1), gunakan fungsi settype()
settype(var,type)
Fungsi digunakan untuk menetapkan jenis pembolehubah dan boleh menukar pembolehubah kepada jenis yang ditentukan.
Hanya tetapkan jenis parameter kepada "int" atau "integer" untuk menukar pembolehubah kepada jenis int. Nota: Fungsi ini mengubah suai pembolehubah asal, dan nilai pulangan adalah daripada jenis Boolean (TRUE dikembalikan apabila tetapan berjaya, dan FALSE dikembalikan apabila ia gagal.).
<?php $str="123.9"; var_dump($str); $int=settype($str,"int"); var_dump($int); //输出bool(true) var_dump($str); //输出int(12) ?>
2), gunakan penukaran jenis paksa
dan tambah jenis sasaran "(int) yang disertakan dalam kurungan sebelum nombor yang hendak ditukar ” atau “(integer)” untuk memaksanya kepada jenis integer.
<?php $n=123.9; var_dump($n); $num1=(integer)$n; $num2=(int)$n; var_dump($num1); var_dump($num2); ?>
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!