codeigniter
CodeIgniter - अंतर्राष्ट्रीयकरण
खोज…
परिचय
CodeIgniter में भाषा वर्ग अंतर्राष्ट्रीयकरण के लिए कई भाषाओं का समर्थन करने का एक आसान तरीका प्रदान करता है। कुछ हद तक, हम विभिन्न भाषाओं में पाठ प्रदर्शित करने के लिए विभिन्न भाषा फ़ाइलों का उपयोग कर सकते हैं।
उदाहरण
फाइलें बनाना भाषा
भाषा फ़ाइल बनाने के लिए, आपको इसे _lang.php
साथ समाप्त करना होगा। उदाहरण के लिए, आप फ्रेंच भाषा के लिए एक भाषा फ़ाइल बनाना चाहते हैं, तो आपको इसे french_lang.php
बचाना होगा। इस फ़ाइल के भीतर आप अपने सभी भाषा पाठों को मुख्य रूप से $lang
सरणी में मान संयोजन में संग्रहीत कर सकते हैं जैसा कि नीचे दिखाया गया है।
$lang['key'] = 'val';
भाषा फ़ाइल लोड हो रही है
अपने एप्लिकेशन में किसी भी भाषा का उपयोग करने के लिए, आपको पहले उस फ़ाइल में संग्रहीत विभिन्न ग्रंथों को पुनः प्राप्त करने के लिए उस विशेष भाषा की फ़ाइल को लोड करना होगा। भाषा फ़ाइल लोड करने के लिए आप निम्न कोड का उपयोग कर सकते हैं।
$this->lang->load('filename', 'language');
फ़ाइल नाम : यह उस फ़ाइल का नाम है जिसे आप लोड करना चाहते हैं। यहाँ फ़ाइल के विस्तार का उपयोग न करें, लेकिन केवल फ़ाइल का नाम। भाषा : यह वह भाषा सेट है जिसमें यह होता है।
भाषा पाठ प्राप्त करना
$this->lang->line('language_key');
भाषा फ़ाइल से एक पंक्ति लाने के लिए बस निम्नलिखित कोड निष्पादित करें। जहाँ language_key लोड की गई भाषा फ़ाइल में कुंजी के मान को लाने के लिए उपयोग किया जाने वाला प्रमुख पैरामीटर है।
ऑटोलॉड भाषाएँ
यदि आपको विश्व स्तर पर कुछ भाषा की आवश्यकता है, तो आप इसे नीचे दिए गए अनुसार application/config/autoload.php
. application/config/autoload.php
फाइल में ऑटोलॉड कर सकते हैं।
| -----------------------------------------------------------------------
| Auto-load Language files
| -----------------------------------------------------------------------
| Prototype:
| $autoload['language'] = array('lang1', 'lang2');
|
| NOTE: Do not include the "_lang" part of your file. For example
| "codeigniter_lang.php" would be referenced as array('codeigniter');
|
*/
$autoload['language'] = array();
बस, CodeIgniter द्वारा अलग-अलग भाषाओं को ऑटोलॉइड होने के लिए पास करें।
Lang_controller.php
नामक एक नियंत्रक बनाएं और इसे application/controller/Lang_controller.php
<?php
कक्षा Lang_controller CI_Controller {
public function index(){
//Load form helper
$this->load->helper('form');
//Get the selected language
$language = $this->input->post('language');
//Choose language file according to selected lanaguage
if($language == "french")
$this->lang->load('french_lang','french');
else if($language == "german")
$this->lang->load('german_lang','german');
else
$this->lang->load('english_lang','english');
//Fetch the message from language file.
$data['msg'] = $this->lang->line('msg');
$data['language'] = $language;
//Load the view file
$this->load->view('lang_view',$data);
}
}
?>
lang_view.php
नामक एक दृश्य फ़ाइल बनाएं और इसे application/views/lang_view.php
<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "utf-8">
<title>CodeIgniter Internationalization Example</title>
</head>
<body>
<?php
echo form_open('/lang');
?>
<select name = "language" onchange = "javascript:this.form.submit();">
<?php
$lang = array('english'=>"English",'french'=>"French",'german'=>"German");
foreach($lang as $key=>$val) {
if($key == $language)
echo "<option value = '".$key."' selected>".$val."</option>";
else
echo "<option value = '".$key."'>".$val."</option>";
}
?>
</select>
<?php
form_close();
echo $msg;
?>
</body>
</html>
नीचे दिए गए चित्र में दिखाए गए अनुसार आवेदन / भाषा में अंग्रेजी , फ्रेंच और जर्मन नामक तीन फ़ोल्डर बनाएं।
नीचे दिए गए कोड को कॉपी करें और इसे application/language/english
फ़ोल्डर में english_lang.php
फ़ाइल में सहेजें।
<?php
$lang['msg'] = "CodeIgniter Internationalization example.";
?>
नीचे दिए गए कोड को कॉपी करें और इसे application/language/French
फ़ोल्डर में french_lang.php
फाइल में सेव करें।
<?php
$lang['msg'] = "Exemple CodeIgniter internationalisation.";
?>
नीचे दिए गए कोड को कॉपी करें और इसे application/language/german
फ़ोल्डर में german_lang.php
फ़ाइल में सहेजें।
<?php
$lang['msg'] = "CodeIgniter Internationalisierung Beispiel.";
?>
उपरोक्त नियंत्रक के लिए मार्ग जोड़ने के लिए application/config/routes.php
में routes.php
फ़ाइल बदलें। फ़ाइल के अंत में निम्न पंक्ति जोड़ें।
$route['lang'] = "Lang_controller";
उपरोक्त उदाहरण को निष्पादित करने के लिए ब्राउज़र में निम्न URL निष्पादित करें।
http://yoursite.com/index.php/lang
फिर अपने ब्राउज़र में जाँच करें। धन्यवाद।