php陣列怎麼將元素值轉換成int整數型別

2022-09-21 22:01:30

轉換步驟:1、使用foreach語句通過參照迴圈的方式遍歷陣列,語法「foreach ($array as &$value){//迴圈體語句塊;}」;2、在迴圈體中,使用is_int()函數判斷元素「$value」是否為整數型別,如果不是則使用intval()函數將其轉為int型別,語法「if(!is_int($value)){$value=intval($value);}」。

php零基礎到就業直播視訊課:進入學習

【推薦】

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

PHP 是弱資料型別的程式語言,所以 PHP 中的陣列變數可以儲存任意多個、任意型別的資料,並且可以實現其他強資料型別中的堆、棧、佇列等資料結構的功能。

簡單來說,PHP陣列元素的型別沒有限制,可以是數位(整數和小數)、字串、布林值、陣列、Object物件等型別。

那麼怎麼讓php陣列中的元素都是int整數型別呢?將不是int整數型別的元素轉為int整數型別即可,下面給大家介紹實現步驟。

轉換步驟:

步驟1、使用foreach語句通過參照迴圈的方式遍歷陣列

foreach ($array as &$value){
    //迴圈體語句塊;
}
  • 遍歷給定的 $array 陣列,在每次迴圈中會將當前陣列的值賦給 $value。

一般情況下,使用foreach語句遍歷陣列時,是對陣列的備份進行操作,一般不會影響陣列本身。

但採用參照迴圈(在 $value 之前加上 &,這樣foreach語句會以參照賦值而不是拷貝一個值),那麼在迴圈體內對陣列進行操作,就會影響陣列本身。

步驟2:在迴圈體中,將元素轉為int整數型別

使用is_int()函數判斷元素$value是否為整數型別,如果不是則使用intval()函數將其轉為int型別

if(!is_int($value)){
   $value=intval($value);
}

實現程式碼:

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

呼叫函數

$a = array(11,"254",12,3.14,3,5); 
f($a);

1.png

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

3.png

函數說明:

1、is_int()函數

is_int() 函數用於檢測變數是否是整數,如果指定的變數是整數 TRUE,否則返回 FALSE。

別名函數():is_integer()、is_long()

注意: 若想測試一個變數是否是數位或數位字串(如表單輸入,它們通常為字串),必須使用 is_numeric()。

2、intval()函數

intval()直接取整,捨棄小數,保留整數

<?php  
$str="123.9";  
var_dump($str);  
$int=intval($str);     //轉換後數值:123  
var_dump($int);  
?>

1.png

擴充套件知識:將值轉成int(整數)型別

1)、使用settype() 函數

settype(var,type)函數用於設定變數的型別,可以將變數轉為指定型別。

只需將引數type設定為「int」或「integer」即可將變數轉為int型別。注:該函數修改原變數,返回值為布林型別(設定成功時返回 TRUE, 失敗時返回 FALSE。)。

<?php  
$str="123.9";  
var_dump($str);  
$int=settype($str,"int");  
var_dump($int);  //輸出bool(true)  
var_dump($str); //輸出int(12)  
?>

2.png

2)、利用強制型別轉換

在要轉換的數之前加上用括號括起來的目標型別「(int)」或「(integer)」,將其強制轉為整型。

<?php  
$n=123.9;  
var_dump($n);  
$num1=(integer)$n;  
$num2=(int)$n;  
var_dump($num1);  
var_dump($num2); 
?>

3.png

推薦學習:《》

以上就是php陣列怎麼將元素值轉換成int整數型別的詳細內容,更多請關注TW511.COM其它相關文章!