PHP Classes

PHP Localization Library: Translate application texts using INI files

Recommend this page to a friend!
  Info   View files Example   View files View files (8)   DownloadInstall with Composer Download .zip   Reputation   Support forum (3)   Blog    
Ratings Unique User Downloads Download Rankings
StarStarStarStar 65%Total: 318 This week: 1All time: 7,242 This week: 560Up
Version License PHP version Categories
localization 1.0.11BSD License5.4Localization, PHP 5
Description 

Author

This package can translate application texts using INI files.

It can determine the current page language from a given request variable or default to the first language in an array of supported language settings defined in the config.php script.

The class loads the texts for the current language from a INI file.

It also returns the application strings translated for the current language. The string may be formatted with optional parameters as defined for sprintf.

If the chosen language translations file does not exist, the class writes a new file for that language based on the default language texts.

Picture of alaca
  Performance   Level  
Name: alaca <contact>
Classes: 2 packages by
Country: Croatia Croatia
Age: 41
All time rank: 24115 in Croatia Croatia
Week rank: 411 Up3 in Croatia Croatia Up
Innovation award
Innovation award
Nominee: 1x

Recommendations

Example

<?php

// include localization class
include 'localization.php';

$localization = Localization::instance();

?>
<html lang="<?php echo $localization->getCurrentLanguage(); ?>">
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   <title><?php echo __('Site title'); ?></title>
   <script>
  
      /* method getJson() can be used for javascript translations */
      var translations = <?php echo $localization->getJson(['Welcome to our site']); ?>;

      console.log(translations['Welcome to our site']);
     
   </script>
</head>
<body>
   <h1><?php echo __('Welcome to our site'); ?></h1>
   <hr />
  
   <ul>
      <?php foreach($localization->getLanguages() as $code => $name): ?>
<li>
            <a href="?language=<?php echo $code; ?>"><?php echo $name; ?></a>
         </li>
      <?php endforeach; ?>
</ul>
  
   <hr />
  
   Usage:
   <?php echo __('Current language key code is %s', [$localization->getCurrentLanguage()]); ?>
<br /><br />
  
   or
   <?php echo __('Translate function can take multiple params like %s and %s', ['this', 'that']); ?>
<br /><br />
  
   or
   <?php echo Localization::instance()->translate('Welcome to our site'); ?> ;
   <br /><br />
  
  
  
</body>
</html>


Details

PHP Localization Library

Setting it up config.php


return [
   'path'  => 'translations', // translation files directory path | translations is default
   'input' => 'language',     // url parameter | language is default
   'languages' => [           // languages, first language is default
      'en' => 'English',
      'de' => 'Deutsch',
      'it' => 'Italiano'
   ]   
];

Translating strings

 echo __('Site title'); 

 echo __('Site %s', ['title']); 

 echo Localization::instance()->translate('Site %s', ['title']); 

  Files folder image Files  
File Role Description
Files folder imagetranslations (4 files)
Plain text file config.php Aux. Auxiliary script
Plain text file index.php Example Example script
Plain text file localization.php Class Class source
Plain text file README.md Data Auxiliary data

  Files folder image Files  /  translations  
File Role Description
  Plain text file de.ini Data Auxiliary data
  Plain text file en.ini Data Auxiliary data
  HTML file index.html Data Auxiliary data
  Plain text file it.ini Data Auxiliary data

 Version Control Unique User Downloads Download Rankings  
 100%
Total:318
This week:1
All time:7,242
This week:560Up
User Ratings User Comments (1)
 All time
Utility:93%StarStarStarStarStar
Consistency:93%StarStarStarStarStar
Documentation:-
Examples:93%StarStarStarStarStar
Tests:-
Videos:-
Overall:65%StarStarStarStar
Rank:607
 
nice
7 years ago (muabshir)
80%StarStarStarStarStar