step 1 : app/routes.php
create a route file in routes.php
Route::match(array(‘GET’,’POST’),’lang/{alias}’, ‘HomeController@multi_lang’);
step 2 : app/controller/HomeController.php
create a function in home controller named as multi_lang
public function multi_lang($lang){
/ /echo $lang;exit();
Session::put(‘my.locale’, $lang);
//return Redirect::to(‘/’);
return Redirect::back();//RETURN TO SAME DIRECTORY
}
step 3 : in base controller call this function in constructor as
$this->set_multi_language();
public function set_multi_language(){
$lang = Session::get(‘lang’);
/ / echo $lang;exit();
if(empty($lang)){ $lang=’en’;}
Session::put(‘lang’, $lang);
App::setLocale($lang);
$this->data[‘lang’] = $lang;
// return Redirect::to(‘/’);
// echo $lang;
}
step 4 : app/start/global.php
App::setLocale(Session::get(‘my.locale’, Config::get(‘app.locale’))); or App::setLocale(Session::get(‘my.locale’));
step 5: in view page we need to write like
<a href=”<?php echo asset(‘lang/’.((Session::get(‘my.locale’)==’fr’)?’en’:’fr’)); ?>”><?php echo ((Session::get(‘my.locale’)==’fr’)?’english’:’français’);?></a>
step 6 :for fetching multi language variable
we need to create
app/lang
en
message.php
fr
message.php
for viewing variable {{ Lang::get(‘messages.join_us’); }} we need to call like this
Recent Comments