您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)PHP使用extract()函數(shù)將數(shù)組轉(zhuǎn)換為變量的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
extract()函數(shù)是PHP中的一個內(nèi)置函數(shù);該函數(shù)可以將數(shù)組轉(zhuǎn)換為多個變量。
PHP extract()函數(shù)
extract()函數(shù)執(zhí)行數(shù)組到變量轉(zhuǎn)換,即它將數(shù)組鍵轉(zhuǎn)換為變量名稱,將數(shù)組值轉(zhuǎn)換為變量值。換句話說,我們可以說extract()函數(shù)將變量從數(shù)組導(dǎo)入到符號表。
基本語法
extract($input_array, $extract_rule, $prefix)
參數(shù):extract()函數(shù)接受三個參數(shù),其中一個是強制的,另外兩個是可選的。
1、$input_array:用于指定要使用的數(shù)組;不可省略,是必需的參數(shù)。
2、$extract_rule:extract()函數(shù)檢查無效的變量名稱和與現(xiàn)有變量名稱的沖突;而此參數(shù)用于指定如何處理無效和沖突的名稱,可省略。此參數(shù)可以采用以下值:
● EXTR_OVERWRITE:表示如果發(fā)生沖突,則覆蓋現(xiàn)有變量。
● EXTR_SKIP:表示如果發(fā)生沖突,請勿覆蓋現(xiàn)有變量。
● EXTR_PREFIX_SAME:表示如果存在沖突,則根據(jù)$ prefix參數(shù)為變量名稱添加前綴。
● EXTR_PREFIX_ALL:表示所有變量名前綴為$ prefix參數(shù)。
● EXTR_PREFIX_INVALID:表示根據(jù)參數(shù)$prefix,只在無效/數(shù)值變量名前添加前綴。
● EXTR_IF_EXISTS:表示只有當(dāng)變量已存在于當(dāng)前符號表中時才覆蓋該變量,否則不執(zhí)行任何操作。
● EXTR_PREFIX_IF_EXISTS:只有在當(dāng)前符號表中存在相同變量的非前綴版本時創(chuàng)建前綴變量名。
3、$prefix:用于指定前綴,可省略。前綴通過下劃線字符自動與數(shù)組鍵分隔。此參數(shù)僅在參數(shù)$ extract_rule設(shè)置為EXTR_PREFIX_SAME,EXTR_PREFIX_ALL,EXTR_PREFIX_INVALID或EXTR_PREFIX_IF_EXISTS時才需要。
返回值:extract()函數(shù)的返回值是一個整數(shù),它表示從數(shù)組中成功提取或?qū)氲淖兞繑?shù)。
代碼示例
下面通過代碼示例來看看如何使用extract()函數(shù)將數(shù)組轉(zhuǎn)換為變量,并輸出。
示例1:
<?php // 創(chuàng)建并初始化數(shù)組 $state = array("AS"=>"ASSAM", "OR"=>"ORRISA", "KR"=>"KERELA"); extract($state); // 使用extract()函數(shù)后 echo"\$AS = $AS<br>\$KR = $KR<br>\$OR =$OR"; ?>
輸出:
$AS = ASSAM $KR = KERELA $OR =ORRISA
示例2:
<?php $AS="Original"; $state = array("AS"=>"ASSAM", "OR"=>"ORRISA", "KR"=>"KERELA"); // handling collisions with extract() function extract($state, EXTR_PREFIX_SAME, "dup"); echo "\$AS=$AS<br>"; echo "\$KR=$KR<br>"; echo "\$OR=$OR <br>"; echo "\$dup_AS = $dup_AS"; ?>
輸出:
$AS=Original $KR=KERELA $OR=ORRISA $dup_AS = ASSAM
感謝各位的閱讀!關(guān)于PHP使用extract()函數(shù)將數(shù)組轉(zhuǎn)換為變量的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。