搜尋
首頁後端開發PHP問題php檔案操作如何將陣列資料存入檔案(兩種方法)

在先前的文章《利用PHP如何檢查空值(4種方法)》中,我們介紹了利用PHP檢查一個給定的值(變數)是不是空值的方法。這次我們來聊聊PHP存數據,看看怎麼將陣列資料存入指定檔案中,有興趣的朋友可以學習了解~

→相關推薦:php檔案操作系列大匯總(持續更新~)

在開發過程中,我們常用var_dump()來列印陣列內容,但有時候我們不方便透過瀏覽器查看偵錯訊息,這時候可以將資訊輸出到文件中查看。今天本文就來跟大家介紹兩種將數組資料寫入文件中的方法。

方法1:利用var_export()函數

#var_export — 輸出或傳回變數的可解析字串表示

#語法:var_export(mixed $value, bool $return = false)

  • value:想要輸出的變數名稱。

  • return:當此參數為 true 時,var_export() 將傳回一個變量,而不是輸出它。

此函數傳回傳遞給函數的變數的結構訊息,它和 var_dump() 類似,不同的是其傳回的表示是合法的 PHP 程式碼。我們可以透過將函數的第二個參數設定為 TRUE,從而傳回變數的表示。

我們透過下面範例來看看利用var_export()函數怎麼將陣列資料存入檔案

<?php
//$cache的值是更新缓存时从数据库中取出来的
$cache = array(
    &#39;id&#39;            =>  2,
    &#39;name&#39;          =>  &#39;李娜&#39;, 
    &#39;age&#39;           =>  23,
    &#39;sex&#39;           =>  &#39;女&#39;,
    &#39;college&#39;       =>  "软件技术",
    &#39;subject&#39;       =>  "PHP编程"
); 

//将数据写入缓存文件
$content = "<?php\nreturn ".var_export($cache,true)."\n?>";    //这里使用var_export()
file_put_contents(&#39;./cache.php&#39;, $content);
?>

分析程式碼:

  • ##利用

    var_export($cache,true)傳回數組變數的可解析字串

  • $content = ""; 拼接字串,並賦值給變數$content;

  • file_put_contents('./cache.php' , $content)在cache.php檔案中寫入資料$content

    file_put_contents()函數可以把字串寫入檔案中,具體可閱讀文章《

    php檔案操作之如何清空檔案重新新增資料》。

因此一開始為空檔案的cache.php中,現在的內容為:


php檔案操作如何將陣列資料存入檔案(兩種方法)##呼叫快取文件的時候只需要使用require()即可將快取檔案的內容複製給一個變量,然後輸出這個數組變數即可:

<?php
$cache = require(&#39;./cache.php&#39;);
var_dump($cache);
?>

輸出結果為:

php檔案操作如何將陣列資料存入檔案(兩種方法)

方法2:利用serialize方法使用serialize 將陣列序列化,儲存在檔案中;當呼叫時,再使用unserialize 還原。

我們透過下面範例來看看利用serialize()函數怎麼將陣列資料存入檔案

<?php
$file=&#39;./cache.php&#39;; 
$cache = array(
    &#39;id&#39;            =>  2,
    &#39;name&#39;          =>  &#39;李娜&#39;, 
    &#39;age&#39;           =>  23,
    &#39;sex&#39;           =>  &#39;女&#39;,
    &#39;college&#39;       =>  "软件技术",
    &#39;subject&#39;       =>  "PHP编程"
); 
//缓存 
if(false!==fopen($file,&#39;w+&#39;)){ 
  file_put_contents($file,serialize($cache));//写入缓存 
} 
?>

使用

file_put_contents($file,serialize($cache))

將序列化後的陣列資料儲存在cache.php檔案中。因此一開始為空檔案的cache.php中,現在的內容為:

php檔案操作如何將陣列資料存入檔案(兩種方法)#讀出快取的時候需要使用unserialize 還原cache.php裡資料即可

<?php
//读出缓存 
$file=&#39;./cache.php&#39;; 
$handle=fopen($file,&#39;r&#39;); 
$cache=unserialize(fread($handle,filesize($file))); 
var_dump($cache);
?>

輸出結果為:

php檔案操作如何將陣列資料存入檔案(兩種方法)好了就說到這裡了,有其他想知道的,可以點擊這個哦。 → →

PHP檔案基礎操作

#推薦:

PHP面試題大匯總(收藏)》《php影片教學

以上是php檔案操作如何將陣列資料存入檔案(兩種方法)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具