Mam plik PHP, plik konfiguracyjny pochodzący z pliku tłumaczenia wiadomości Yii , który zawiera:
<?php
return array(
'key' => 'value'
'key2' => 'value'
);
?>
Chcę załadować tę tablicę z innego pliku i przechowywać ją w zmiennej
Próbowałem to zrobić, ale to nie działa
function fetchArray($in)
{
include("$in");
}
$in
to nazwa pliku PHP
Jakieś pomysły, jak to zrobić?
global
słowa kluczowego, aby użyć zmiennej wewnątrz funkcji.?>
Nie zaleca się zamykania tagów php ( ) w plikach, które nie zawierają kodu HTML i nie wyświetlają niczego. Ponieważ wszystkie znaki następujące po nim zostaną wyprowadzone do standardowego strumienia (echo
red.)Odpowiedzi:
Gdy dołączony plik coś zwraca, możesz po prostu przypisać to do zmiennej
$myArray = include $in;
Zobacz http://php.net/manual/function.include.php#example-126
źródło
Zwracanie wartości z pliku dołączanego
Używamy tego w naszym CMS. Jesteś blisko, po prostu musisz zwrócić wartość z tej funkcji.
function fetchArray($in) { if(is_file($in)) return include $in; return false }
Zobacz przykład 5 # tutaj
źródło
include
, należy bardzo uważać na używanie nawiasów wokół argumentu. Zobacz php.net/manual/en/function.include.php#example-129Ponieważ plik zwraca tablicę, możesz po prostu przypisać ją do zmiennej
Oto przykład
$MyArray = include($in); print_r($MyArray);
Wynik:
Array ( [key] => value [key2] => value )
źródło