Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer

Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer

青灯夜游
青灯夜游asal
2022-09-21 18:14:572886semak imbas

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);}".

Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer

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

Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer

$b = array(FALSE,"254",3.14,3,null,TRUE); 
f($b);

Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer

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

Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer

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

Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer

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

Bagaimana untuk menukar nilai elemen tatasusunan php kepada jenis integer

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn