CodeIgniter 언어 파일에 데이터베이스 데이터 전달
CodeIgniter로 다국어 웹사이트를 개발할 때 데이터베이스 콘텐츠를 언어 파일에 통합하는 것이 중요합니다. 이는 번역 정보가 포함된 데이터베이스 테이블을 생성하고 채운 다음 컨트롤러 기능을 사용하여 데이터베이스 데이터를 기반으로 언어 파일을 동적으로 생성함으로써 달성할 수 있습니다.
1. 데이터베이스 설계
다음 열이 포함된 lang_token이라는 테이블을 만듭니다.
번역으로 테이블 채우기 데이터.
2. CodeIgniter 언어 파일 구조
CodeIgniter의 언어 파일은 애플리케이션/언어 디렉터리 내의 폴더에 저장되어야 합니다. 각 언어 폴더에는
<code class="php"><?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); /** * * Created: <timestamp> by <author> * * Description: <Language Name> language file for <category> * */ $lang = array( '<category>_noMail' => 'You must submit a valid email address', '<category>_noUser' => 'You must submit a username' );</code>
위치:
3. 언어 파일을 생성하는 컨트롤러 기능
데이터베이스에서 번역 데이터를 검색하고 즉시 언어 파일을 생성하는 컨트롤러 기능을 만듭니다. 이 함수는 다음을 수행해야 합니다.
<code class="php">function updatelangfile($my_lang) { $this->db->where('lang',$my_lang); $query = $this->db->get('lang_token'); $lang = array(); $langstr = "<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');\n\n\n"; foreach ($query->result() as $row) { $langstr .= "$lang['{$row->category}_{$row->description}'] = \"{$row->token}\";\n"; } write_file('./application/language/' . $my_lang . '/general_lang.php', $langstr); }</code>
4. 컨트롤러 함수 호출
언어 파일을 동적으로 생성하려면 데이터베이스가 변경될 때마다 updatelangfile 함수를 호출하세요. 예:
<code class="php">function updateLanguages() { $this->updatelangfile('english'); }</code>
5. 언어 파일 사용
이제 애플리케이션은 언어 클래스의 로드 메소드를 사용하여 동적으로 생성된 언어 파일을 로드하고 사용할 수 있습니다. 예:
<code class="php">$this->lang->load('general', 'english');</code>
다음 단계를 수행하면 데이터베이스 콘텐츠를 CodeIgniter 언어 파일에 원활하게 통합하여 웹사이트를 현지화할 수 있습니다.
위 내용은 데이터베이스에서 CodeIgniter 언어 파일을 동적으로 생성하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!