PHP - 将数据加载到数组

时间:2016-09-12 18:06:34

标签: php arrays input external

是否可以从.txt?

将数据加载到数组

这是我的.php文件:

<?php

    $file = file_get_contents('data.txt');
    $data = array(

    $file;

    );

?>

这是data.txt文件:

    "1" => array('code', 'name', 'surname', 'email', 'phone', 'type', 'datetime', 'place1', 'place2', 'number1', 'number2', 'data1', 'data2', 'data3'),  
    "2" => array('code', 'name', 'surname', 'email', 'phone', 'type', 'datetime', 'place1', 'place2', 'number1', 'number2', 'data1', 'data2', 'data3'),  
    "3" => array('code', 'name', 'surname', 'email', 'phone', 'type', 'datetime', 'place1', 'place2', 'number1', 'number2', 'data1', 'data2', 'data3') 

但它不起作用。谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

有很多更好的方法可以做到这一点。

使用JSON

data.json:

{
  "1": ['code', 'name', 'surname', 'email', 'phone', 'type', 'datetime', 'place1', 'place2', 'number1', 'number2', 'data1', 'data2', 'data3'],
  "2": 'code', 'name', 'surname', 'email', 'phone', 'type', 'datetime', 'place1', 'place2', 'number1', 'number2', 'data1', 'data2', 'data3',
  "3": 'code', 'name', 'surname', 'email', 'phone', 'type', 'datetime', 'place1', 'place2', 'number1', 'number2', 'data1', 'data2', 'data3'
}

PHP阅读它:

<?php
  $data = json_decode(file_get_contents('data.json'), true);
  var_dump($data)

使用PHP数据文件

data.php

<?php
return [
    "1" => array('code', 'name', 'surname', 'email', 'phone', 'type', 'datetime', 'place1', 'place2', 'number1', 'number2', 'data1', 'data2', 'data3'),  
    "2" => array('code', 'name', 'surname', 'email', 'phone', 'type', 'datetime', 'place1', 'place2', 'number1', 'number2', 'data1', 'data2', 'data3'),  
    "3" => array('code', 'name', 'surname', 'email', 'phone', 'type', 'datetime', 'place1', 'place2', 'number1', 'number2', 'data1', 'data2', 'data3')
];

代码来阅读它:

<?php
$data = include('data.php');

您也可以使用php的序列化,但它会使数据格式的可读性降低。

答案 1 :(得分:0)

您可以使用eval()

eval('$data = array(' . file_get_contents('data.txt') . ');');
var_dump($data);