2015-03-28 4 views
1

Глобальные переменные не одобряются, и часто часто используется статическая переменная.Статическая переменная из разобранного CSV?

Мне нужно иметь переменные, которые я получаю из CSV-файла, доступного для любой функции в файле php.

Можно ли это сделать, если я разбираю CSV-файл для переменных?

Например, как я могу сделать $name и $table доступны для любой функции в файле ?:

<?php 
$f_pointer=fopen("student.csv","r"); // file pointer 

while(! feof($f_pointer)){ 
$ar=fgetcsv($f_pointer); 
$name = $data[0]; 
$table = $data[3]; 
echo print_r($ar); // print the array 
echo "<br>"; 
} 
?> 

ответ

1

Вы можете создать класс от этой функции и возвращать результаты от этого в качестве функции члена. Мы можем использовать многомерный массив в качестве нашего возврата.

class My_Class{ 

    public $array; 

    public function get() 
    { 
     $this->array = array(); 

     while(! feof($f_pointer)){ 
      $ar=fgetcsv($f_pointer); 
      $name = $data[0]; 
      $table = $data[3]; 
      $this->array[] = array(
       'name' => $name, 
       'table' => $table, 
       'ar' => $ar 
      ); 
     } 

     return $this->array(); 
    } 
} 

Затем вы можете инициализировать его таким образом:

$My_Class = new My_Class; 
echo '<pre>', print_r($My_Class->get(), true),'</pre>'; 

Который будет производить многомерный массив с данными, которые мы итерация в нашем случае в то время.