sostituzione caratteri

sto sviluppando un sistema di traduzione per una pagina , qualcosa che sostituisca {{...}} con il contenuto in un array ammettiamo che l'array contenga come chiava il contenuto di {{}}

sarebbe

{{header}}

$lang['header'];

devo fare una funzione che parsi tutta la pagina e sostituisca {{chiave}} con <?php echo $lang['chiave']; ?>

o $lang['chiave'] se {{}} si trova nei tag php ( questa cosa è leggermente più complicata :D ) .... come posso fare?

 :bye:

inviato 10 anni fa
Andrea Turso
Andrea Turso
86
X 0 X

Perché non usi Smarty o un altro template engine? Fanno pressappoco quello che vuoi fare tu (e moto di più).

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

asd si voglio usarlo , ma visto che dovevo solo sostituire la lingua :D

cmq devo per forza imparare ad usarlo lol!!!

grazie

:bye:

risposto 10 anni fa
Andrea Turso
Andrea Turso
86
X 0 X

Con smarty posso avere un file con la lingua e sostituire le corrispondenze con quelle di quel file vero??

:bye:

risposto 10 anni fa
Andrea Turso
Andrea Turso
86
X 0 X
require('Smarty.class.php');

class RevokeBook extends Smarty{

   private $dbuser;
   private $dbpass;
   private $dbname;
   private $dbhost;
   public  $title;
   
   function RevokeBook() {
      /**
      * Class Constructor
      * @author     Trashofmasters <trashofmasters@gmail.com>
      * @return     void
      * 
      */
      
         if (! @include('config.php')) {
            exit('<strong>RevokeBook error :</strong> Unable to include configuration file!');
         }
            
            $this->dbpass = $config['database']['dbpass'];
            $this->dbuser = $config['database']['dbuser'];
            $this->dbname = $config['database']['dbname'];
            $this->dbhost = $config['database']['dbhost'];
            $this->title  = $config['template']['title'];
            
            $this->Smarty();
            $this->caching = true;
   
   }

non capisco come mai non funzioni :| non da errori ( stranamente non mi sta dando mai errori questa classe , nemmeno se metto : al posto di ; alla fine della stringa con error reporting su E_ALL )

:bye:

risposto 10 anni fa
Andrea Turso
Andrea Turso
86
X 0 X

bah risolto a quanto pare c'era un include silenziato nella index che era l'include della classe ( prima che estendessi smarty ) lol!

:bye:

risposto 10 anni fa
Andrea Turso
Andrea Turso
86
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda