/* Website language English solution - realized by changing the buffer Function: Determine the language selected by the user based on the cookie, the default is Chinese (no replacement is performed), when the user selects English on the page, it is written through JS Cookie language status code, this page determines whether to perform language translation by changing cookies. Description: The front-end uses JS to determine the language selected by the user. When the user selects English, JS writes the cookie language status as 'EN', and the background program passes Determine the language encoding saved by the cookie and perform the language translation operation. Author: aibhsc Usage: Add the Chinese and English to be replaced in the following file, and then quote the file in the program entry file. Application scenario: For corporate websites that do not have English For websites that are often used and it is too expensive to modify the program and database, but must have English websites, you can try this program. */
- /*
- Website language processing program - implemented by changing the buffer
- Function: Determine the language selected by the user based on the cookie, the default is Chinese (no replacement is performed), when the user selects on the page When it is English, the cookie language status code is written through JS. This page determines whether to perform language translation by judging whether to change the cookie.
- Note: The language selected by the user is judged through JS on the front end. When the user selects English, JS writes the cookie language status is 'EN', the background program performs language translation operations by judging the language encoding saved by the cookie.
- Author: aibhsc
- Instructions for use: Add the Chinese and English to be replaced in the following file, and then quote the file in the program entry file.
- Application scenarios: For websites where English is not often used on corporate websites, and it is too expensive to modify the program and database, but must be in English, you can try this program.
- */
-
- //Storage language packages through one-dimensional arrays to save space , to facilitate key processing, note: ① Don’t misplace key values; ② Long strings are given priority
- //Language pack, put the content to be translated here——start
- $cn[]='User login';$en []='UserLogin';
- $cn[]='Login';$en[]='Login';
- $cn[]='Register';$en[]='Reg';
- $cn[] ='Home';$en[]='Home';
- $cn[]='View';$en[]='View';
- $cn[]='Where to go';$en[]='Local ';
- $cn[]='Drill Weight';$en[]='Weight';
- $cn[]='National Inspection';$en[]='NGTC';
- $cn[]='' ;$en[]='';
- //Language package - end
- //Global definition, reference language package.
- $GLOBALS['global_CN']=&$cn;
- $GLOBALS['global_EN']= &$en;
- $GLOBALS['global_lang']=$_COOKIE['user_lang']?$_COOKIE['user_lang']:'CN';
-
- cache(); //Perform language translation operation
-
- function cache( ){
- ob_start(array($this, "AutoCache")); //If you don't understand this line, please check the fourth example "Example #4" in the PHP manual call_user_func
- }
- function cn2en($body){ // Parameters: $body The content to be translated; $arr_cn Chinese language pack; $arr_en English language pack; Return value: Replaced string
- //When the key values of the two language packs are incorrect, the original value is returned without any operation.
- if(count($GLOBALS['global_CN'])<>count($GLOBALS['global_EN'])){return $body;}
- //When the user selects English, the Chinese in the document will be Language pack to replace with English
- if($GLOBALS['global_lang']=='EN'){$body=str_ireplace($GLOBALS['global_CN'],$GLOBALS['global_EN'],$body);}
- return $body;
- }
-
- function AutoCache($contents){
- $contents = cn2en($contents); //Execute language translation
- return $contents;
- }
- ?>
Copy code
|