如何在PHP中将var_export的输出读入变量?

时间:2018-01-12 13:40:19

标签: php associative-array

我有一个txt文件,我使用命令输出变量:

$h = fopen('log.txt', 'w'); 
fwrite($h, var_export($my_var, true));
fclose($h);

log.txt的内容与此类似:

array (
  'IMType' => '1',
  'Email' => 'test@gmail.com',
  'SignupName' => 'test11',
  'Password' => '11111',
  'Encrypted' => '',
  'Confirm' => '11111',
  'OldPassword' => '',
  'Name' => 'test',
  'SignupProvinceText' => 'province',
  'SignupCity' => 'cityname',
  'Street' => 'street x.y',
  'SignupIndustry' => 'IT',
  'SignupCompany' => 'jobirn',
  'SignupJt' => 'engineer',
  'CellPhoneNum' => '',
  'linked_in' => '',
)

现在,我想再次阅读此文件(稍后)并转换为关联数组?

知道如何做到这一点?

1 个答案:

答案 0 :(得分:0)

我建议使用serialize()和unserialize()或json_encode()和json_decode()来执行此任务。它们更适合存储数据。

file_put_contents('path/to/your_file.txt', serialize($my_var));

$my_var = unserialize(file_get_contents('path/to/your_file.txt'));

或者对于json版本:

file_put_contents('path/to/your_file.txt', json_encode($my_var));

$my_var = json_decode(file_get_contents('path/to/your_file.txt'), true);