2017-04-03 8 views
0

디렉토리 구조는 같다이yii1에서 모든 언어 배열을 얻는 방법은 무엇입니까?

modules/ 
     /module1 
       /messages/ 
         /en 
          /admin.php 
          /profile.php 
         /ru/ 
          /admin.php 
          /profile.php 

     /module2/ 
       /messages/ 
         /en 
          /account.php 
          /stats.php 
         /ru 
          /account.php 
          /stats.php 

도스 PHP 파일의 각 배열에 의해

return array(
'hello' => 'aloha' 
); 

그래서 예를 들어, 같은 텍스트 문자열의 키 값 쌍을 포함하는 경우 내부의 거대한 배열을 가지고 방법 각 파일에 배열 가져 오기?

+0

당신이 얻을 것을 목표로 그 모든 파일 안에있는 모든 배열? 또는 특정 언어? – hassan

+0

예를 들어 영어 (en) .. en 디렉터리 아래의 각 파일에서 배열을 가져 오는 방법은 무엇입니까? – sasori

+0

이 말씀이 있으십니까? http://www.yiiframework.com/wiki/638/simple-example-for-language-translation/ – dimis283

답변

-1

이 사용 glob() PHP 함수를 달성하기 위해 새로운 방법을 구현할 수

$language = 'en'; 

foreach (glob('modules/*/messages/' . $language . '/*') as $file) { 
    echo "$file\n"; 
} 

출력 :

modules/module1/messages/en/admin.php 
modules/module1/messages/en/profile.php 
modules/module2/messages/en/admin.php 
modules/module2/messages/en/profile.php 

해당 파일 내부에서 배열을 반환 :

$language = 'en'; 
$arrays = []; 
foreach (glob('modules/*/messages/' . $language . '/*') as $file) { 
    $arrays[] = require_once "$file"; 
} 

print_r($arrays); 
+0

그런 다음 각 파일에서 배열을 가져 오는 방법은 무엇입니까? – sasori

+0

단순히 require_once를 사용하여 업데이트 – hassan

+0

을 확인하십시오. 예를 들어 en, ru, ch, jp를 얻을 수있는 방법이 있습니다. 이러한 약어는 messages 디렉토리의 디렉토리 이름입니다 ... 또한 몇 가지 언어를 알고 싶습니다. 메시지 디렉토리 안에 있습니다 – sasori