可以轉換。轉換步驟:1、使用foreach語句透過引用循環的方式遍歷數組,語法「foreach ($arr as &$v){//循環體語句塊;}」;2、在循環體中,使用intval()或者settype()函數將陣列元素「$v」都轉為int(整數)型別即可,語法「$v=intval($v);」或「settype($v,"int");」。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
php可以把陣列轉換int(整數)陣列,即數組中的元素都是整數。
在php中,可以利用foreach語句和intval()(settype())函數來實現轉換。
轉換步驟:
步驟1:使用foreach語句透過引用循環的方式遍歷數組
foreach ($arr as &$v){ //循环体语句块; }
遍歷給定的$arr 數組,在每次循環中會將目前數組的值賦給$v。
在 $v 之前加上 &
,這樣foreach語句會以引用賦值而非拷貝一個值,這樣在迴圈體內對陣列進行操作,就會影響陣列本身。
步驟2:在迴圈體中,使用intval()或settype()函數將陣列元素都轉換為int(整數)型別
intval()
:用於取得變數的整數值;
#settype(變數,"type")
,用於將變數轉為指的type型別;當type為"integer" (或為"int",從PHP 4.2.0 起)時,可設定為整數。
$v=intval($v); //或者 settype($v,"int");
完整範例程式碼:
<?php header(&#39;content-type:text/html;charset=utf-8&#39;); $arr = ["12","23",true,null,"45",2,3,4]; var_dump($arr); foreach($arr as &$v){ // $v=intval($v); settype($v,"int"); } var_dump($arr); ?>
可以看出,在最後一個元素前,有一個&,那是因為數組最後一個元素的$value 引用在foreach 迴圈之後仍會保留。我們需要使用unset() 來銷毀。
unset($v); // 最后取消掉引用
說明:
settype() 函數用來設定變數的型別。
bool settype ( mixed &$var , string $type )
參數說明:
#$var: 要轉換的變數。
$type: type 的可能值為。
"boolean" (或為"bool",由PHP 4.2.0 起)
"integer" (或為"int" ,從PHP 4.2.0 起)
"float" (只在PHP 4.2.0 之後可以使用,對於舊版本中使用的"double"現已停用)
"string"
"array"
以上是php可以把數組轉換int(整數)數組嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!