PHP把數組寫入檔案執行個體代碼

來源:互聯網
上載者:User

php把數組寫入檔案,通過序列和反序列實現。請看代碼


$file="./data/file.cache";
file_put_contents($file,serialize($array));//寫入緩衝

 代碼如下 複製代碼

<?php
$file="./data/file.cache";
 
$array = array("count" => "3000",
 
               "num"  =>"300");
 
//緩衝
 
file_put_contents($file,serialize($array));//寫入緩衝
?>

<?
$file="./data/file.cache";
$handle = fopen($file, "r");
$cacheArray = unserialize(fread($handle, filesize ($file)));
print_r($cacheArray);
?>

//將一個測試的數組寫入一個PHP檔案:

 代碼如下 複製代碼

<?php //要寫入PHP檔案的數組

$write_array = array( '1' => 'oneone', '2' => 'two', '3' => 'three', '4' => 'four', '5' => 'five' ); //字串處理
$string_start = "<?phpn"; $string_process = var_export($write_array, TRUE); $string_end = "n?>"; $string = $string_start.$string_process.$string_end; //開始寫入檔案
echo file_put_contents('test_array.php', $string);
?>

 
這裡用到了兩個函數:

 代碼如下 複製代碼

1,var_export():

·var_export — 用來輸出或返回一個變數的字串表示,它和 var_dump() 的區別是,var_export() 可以用來返回關於傳遞給該函數的變數的結構資訊,並且其返回的表示是合法的 PHP 代碼如果 “echo $string_process;”,則可以看到輸出結果:

 代碼如下 複製代碼
array ( 1 => 'oneone', 2 => 'two', 3 => 'three', 4 => 'four', 5 => 'five', )

 
而它就是我們要寫入 test_array.php 檔案的內容(除去 php 標籤);

·var_dump() 函數用來列印變數的相關資訊,它只用來“列印”,而不會傳回值,它的原型是 void var_dump(……),我們來 “var_dump($string_process);”,則可以看到輸出結果:

 代碼如下 複製代碼
string(86) "array ( 1 => 'oneone', 2 => 'two', 3 => 'three', 4 => 'four', 5 => 'five', )"

 

可以看到輸出的string(86) “…”,再一次說明了 var_export() 返回的是一個字串。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.