可以轉(zhuǎn)化。轉(zhuǎn)化步驟:1、使用foreach語(yǔ)句通過(guò)引用循環(huán)的方式遍歷數(shù)組,語(yǔ)法“foreach ($arr as &$v){//循環(huán)體語(yǔ)句塊;}”;2、在循環(huán)體中,使用intval()或者settype()函數(shù)將數(shù)組元素“$v”都轉(zhuǎn)為int(整數(shù))類型即可,語(yǔ)法“$v=intval($v);”或“settype($v,"int");”。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦
php可以把數(shù)組轉(zhuǎn)化int(整數(shù))數(shù)組,即數(shù)組中的元素都是整數(shù)。
在php中,可以利用foreach語(yǔ)句和intval()(settype())函數(shù)來(lái)實(shí)現(xiàn)轉(zhuǎn)換。
轉(zhuǎn)化步驟:
步驟1:使用foreach語(yǔ)句通過(guò)引用循環(huán)的方式遍歷數(shù)組
foreach ($arr as &$v){ //循環(huán)體語(yǔ)句塊; }
遍歷給定的 $arr 數(shù)組,在每次循環(huán)中會(huì)將當(dāng)前數(shù)組的值賦給 $v。
在 $v 之前加上 &
,這樣foreach語(yǔ)句會(huì)以引用賦值而不是拷貝一個(gè)值,這樣在循環(huán)體內(nèi)對(duì)數(shù)組進(jìn)行操作,就會(huì)影響數(shù)組本身。
步驟2:在循環(huán)體中,使用intval()或者settype()函數(shù)將數(shù)組元素都轉(zhuǎn)為int(整數(shù))類型
-
intval()
:用于獲取變量的整數(shù)值; -
settype(變量,"type")
,用于將變量轉(zhuǎn)為指的type類型;當(dāng)type為"integer" (或?yàn)?quot;int",從 PHP 4.2.0 起)時(shí),可設(shè)置為整數(shù)。
$v=intval($v); //或者 settype($v,"int");
完整示例代碼:
<?php header('content-type:text/html;charset=utf-8'); $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); ?>
可以看出,在最后一個(gè)元素前,有一個(gè)&,那是因?yàn)閿?shù)組最后一個(gè)元素的 $value 引用在 foreach 循環(huán)之后仍會(huì)保留。我們需要使用unset() 來(lái)將其銷毀。
unset($v); // 最后取消掉引用
說(shuō)明:
settype() 函數(shù)用于設(shè)置變量的類型。
bool settype ( mixed &$var , string $type )
參數(shù)說(shuō)明:
-
$var: 要轉(zhuǎn)換的變量。
-
$type: type 的可能值為。
-
"boolean" (或?yàn)?quot;bool",從 PHP 4.2.0 起)
-
"integer" (或?yàn)?quot;int",從 PHP 4.2.0 起)
-
"float" (只在 PHP 4.2.0 之后可以使用,對(duì)于舊版本中使用的"double"現(xiàn)已停用)
-
"string"
-
"array"
-
"object"
-
"null" (從 PHP 4.2.0 起)
-
settype() 函數(shù)會(huì)改變?cè)兞俊?/p>
返回值:設(shè)置成功時(shí)返回 TRUE, 失敗時(shí)返回 FALSE。
推薦學(xué)習(xí):《PHP視頻教程》