您好,登錄后才能下訂單哦!
這篇文章主要介紹php中怎么將數(shù)組數(shù)據(jù)存入文件,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
方法1:利用var_export()函數(shù)
var_export — 輸出或返回變量的可解析字符串表示
語(yǔ)法:var_export(mixed $value, bool $return = false)
value:想要輸出的變量名。
return:此參數(shù)為 true 時(shí),var_export() 將返回一個(gè)變量,而不是輸出它。
此函數(shù)返回關(guān)于傳遞給該函數(shù)的變量的結(jié)構(gòu)信息,它和 var_dump() 類(lèi)似,不同的是其返回的表示是合法的 PHP 代碼。我們可以通過(guò)將函數(shù)的第二個(gè)參數(shù)設(shè)置為 TRUE,從而返回變量的表示。
我們通過(guò)下面示例來(lái)看看利用var_export()函數(shù)怎么將數(shù)組數(shù)據(jù)存入文件
<?php //$cache的值是更新緩存時(shí)從數(shù)據(jù)庫(kù)中取出來(lái)的 $cache = array( 'id' => 2, 'name' => '李娜', 'age' => 23, 'sex' => '女', 'college' => "軟件技術(shù)", 'subject' => "PHP編程" ); //將數(shù)據(jù)寫(xiě)入緩存文件 $content = "<?php\nreturn ".var_export($cache,true)."\n?>"; //這里使用var_export() file_put_contents('./cache.php', $content); ?>
分析代碼:
利用var_export($cache,true)
返回?cái)?shù)組變量的可解析字符串
$content = "<?php\nreturn ".var_export($cache,true)."\n?>";
拼接字符串,并賦值給變量$content;
file_put_contents('./cache.php', $content)
在cache.php文件中寫(xiě)入數(shù)據(jù)$content
。
file_put_contents()函數(shù)可以把一個(gè)字符串寫(xiě)入文件中,具體可閱讀文章《php文件操作之如何清空文件重新添加數(shù)據(jù)》。
因此一開(kāi)始為空文件的cache.php中,現(xiàn)在的內(nèi)容為:
調(diào)用緩存文件的時(shí)候只需要使用require()即可將緩存文件的內(nèi)容復(fù)制給一個(gè)變量,然后輸出這個(gè)數(shù)組變量即可:
<?php $cache = require('./cache.php'); var_dump($cache); ?>
輸出結(jié)果為:
方法2:利用serialize方法
使用 serialize 將數(shù)組序列化,存儲(chǔ)在文件中;調(diào)用時(shí),再使用 unserialize 還原。
我們通過(guò)下面示例來(lái)看看利用serialize()函數(shù)怎么將數(shù)組數(shù)據(jù)存入文件
<?php $file='./cache.php'; $cache = array( 'id' => 2, 'name' => '李娜', 'age' => 23, 'sex' => '女', 'college' => "軟件技術(shù)", 'subject' => "PHP編程" ); //緩存 if(false!==fopen($file,'w+')){ file_put_contents($file,serialize($cache));//寫(xiě)入緩存 } ?>
使用file_put_contents($file,serialize($cache))
將序列化后的數(shù)組數(shù)據(jù)存儲(chǔ)在cache.php文件中。因此一開(kāi)始為空文件的cache.php中,現(xiàn)在的內(nèi)容為:
讀出緩存的時(shí)候需要使用unserialize 還原cache.php里數(shù)據(jù)即可
<?php //讀出緩存 $file='./cache.php'; $handle=fopen($file,'r'); $cache=unserialize(fread($handle,filesize($file))); var_dump($cache); ?>
輸出結(jié)果為:
以上是“php中怎么將數(shù)組數(shù)據(jù)存入文件”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。