/*
* Classe para tradução PHP
* @autor Ellos design
* version 0.2
*/
Class Tradutor {
protected $linguagemPadrao = "pt";
protected $linguagemAtual;
protected $path = PATH_ATUAL."/lang/";
// Método construtor
public function __construct() {
if (isset($_SESSION['lang'])) {
$this->linguagemAtual = $_SESSION['lang'];
} else {
$this->linguagemAtual = $this->getUserLang();
$_SESSION['lang'] = $this->linguagemAtual;
}
}
// Retorna a linguagem atual
public function getLanguage() {
return $this->linguagemAtual;
}
// Altera a linguagem atual
public function setLanguage($lang) {
if ($lang != "" && file_exists($this->path.$lang.".php")) {
$this->linguagemAtual = $lang;
$_SESSION['lang'] = $lang;
} else if ($lang == $this->linguagemPadrao) {
$this->linguagemAtual = $lang;
$_SESSION['lang'] = $lang;
}
}
// Retorna a string traduzida para a linguagem atual
public function __($string) {
$lang = $this->getLanguage();
if ($lang != $this->linguagemPadrao) {
if (file_exists($this->path.$lang.".php")) {
$arquivo = require ($this->path.$lang.".php");
if(isset($arquivo[$string])){
$string = $arquivo[$string];
}
}
}
return $string;
}
// Retorna um JSON do array da linguagem atual
function makeJSON() {
$lang = $this->getLanguage();
$array = array();
if ($lang != "" && file_exists($this->path.$lang.".php")) {
$array = require($this->path.$lang.".php");
}
return json_encode($array);
}
// Retorna o idioma do navegador do usuário
public function getUserLang() {
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
$acceptLang = ['pt', 'en', 'es'];
$lang = in_array($lang, $acceptLang) ? $lang : $this->linguagemPadrao;
return $lang;
}
}
Fatal error: Uncaught Error: Class 'Tradutor' not found in /home/storage/c/c6/54/cuxa1/public_html/index.php:25
Stack trace:
#0 {main}
thrown in /home/storage/c/c6/54/cuxa1/public_html/index.php on line 25