轉換步驟: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);
$b = array(FALSE,"254",3.14,3,null,TRUE); f($b);
函數說明:
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); ?>
擴充套件知識:將值轉成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)、利用強制型別轉換
在要轉換的數之前加上用括號括起來的目標型別「(int)」或「(integer)」,將其強制轉為整型。
<?php $n=123.9; var_dump($n); $num1=(integer)$n; $num2=(int)$n; var_dump($num1); var_dump($num2); ?>
推薦學習:《》
以上就是php陣列怎麼將元素值轉換成int整數型別的詳細內容,更多請關注TW511.COM其它相關文章!