Pet*_*aig 8 php arrays serialization
我有一个数组:
$myArray = array('key1'=>'value1', 'key2'=>'value2');
Run Code Online (Sandbox Code Playgroud)
我把它保存为变量:
$fileContents = var_dump($myArray);
Run Code Online (Sandbox Code Playgroud)
如何将变量转换回常规数组?
echo $fileContents[0]; //output: value1
echo $fileContents[1]; //output: value2
Run Code Online (Sandbox Code Playgroud)
Pao*_*ino 20
我想你可能想看看serialize
和unserialize
.
$myArray = array('key1'=>'value1', 'key2'=>'value2');
$serialized = serialize($myArray);
$myNewArray = unserialize($serialized);
print_r($myNewArray); // Array ( [key1] => value1 [key2] => value2 )
Run Code Online (Sandbox Code Playgroud)
Bin*_*V A 19
序列化可能是正确的答案 - 但我更喜欢使用JSON - 人类编辑数据将是可能的...
$myArray = array('key1'=>'value1', 'key2'=>'value2');
$serialized = json_encode($myArray);
$myNewArray = json_decode($serialized);
print_r($myNewArray); // Array ( [key1] => value1 [key2] => value2 )
Run Code Online (Sandbox Code Playgroud)
尝试使用var_export生成有效的PHP语法,将其写入文件,然后"包含"该文件:
$myArray = array('key1'=>'value1', 'key2'=>'value2');
$fileContents = '<?php $myArray = '.var_export($myArray, true).'; ?>';
// ... after writing $fileContents to 'myFile.php'
include 'myFile.php';
echo $myArray['key1']; // Output: value1
Run Code Online (Sandbox Code Playgroud)