2016-12-02 83 views
0

我有一個PHP文件,但文件的數據是Array從php文件讀取數組

當我打開文件時,我能夠獲取其內容,但無法將其作爲數組讀取。它只是讀爲一個字符串。有什麼辦法讀取一個PHP文件作爲數組。

我的PHP文件看起來像,

<?php $someArray = array (
    0 => 
    array (
    'data' => 'sadsa', 
    'sadsad' => 'sdsss', 
    ...... 
    'DOB' => 
    array (
     0 => 
     array (
     'Day' => '12', 
     'Month' => '12', 
     'Year' => '12', 
    ), 
    ), 
    .. 
    ... 
), 
    1 => 
    ........... 
    ... 
    2 => 
    ... 
    .... 

閱讀使用文件,

file_get_contents ('$filepath'); 

現在我想讀取文件和訪問它作爲一個數組。

+2

你需要「包括」或「需要」或你有什麼。 – Rasclatt

+2

使用'include'代替 – Ghost

+2

[php.net/include](http://php.net/include) – rationalboss

回答

1

你不需要file_get_contents()你打算實現因爲該文件包含一個聲明的變量的目標。您需要的是將文件包含在當前腳本中,並訪問該數組,就好像它在同一個腳本中聲明的一樣,如下所示。請記住,file_get_contents()將始終以字符串的形式返回文件的內容。理想情況下(在這種情況下),這不是你所需要的。

<?php 
    // CURRENT SCRIPT: --- PSUEDO FILE-NAME: test.php 
    require_once $filepath; //<== $filepath BEING THE PATH TO THE FILE CONTAINING 
           //<== YOUR DECLARED ARRAY: $someArray 

    // JUST AS A DOUBLE-CHECK, VERIFY THAT THE VARIABLE $someArray EXISTS 
    // BEFORE USING IT.... HOWEVER, SINCE YOU ARE SURE IT DOES EXIST, 
    // YOU MAY WELL SKIP THIS PART AND SIMPLY START USING THE $someArray VARIABLE. 
    if(isset($someArray)){ 
     var_dump($someArray); 
    } 
1

您可以加載整個文件作爲與包括功能的陣列,你還可以與需要或包括加載該文件。

陣列文件

<?php return array (
    0 => 
    array (
    'data' => 'sadsa', 
    'sadsad' => 'sdsss', 
    ...... 
    'DOB' => 
    array (
     0 => 
     array (
     'Day' => '12', 
     'Month' => '12', 
     'Year' => '12', 
    ), 
    ), 
    .. 
    ... 
), 
    1 => 
    ........... 
    ... 
    2 => 
    ... 
    .... 

加載文件

<?php 
$someArray = include $filepath; 

您可以包括您的陣列的文件太多,用include功能和使用$變量的someArray。