Sono metodi differenti e nel tuo caso quasi paritetici.
Ma pensa se il cliente (o tu stesso) in un futuro prossimo, trovate una grafica più accattivante e vorrete cambiarla: ti tocca cambiare due siti distinti.
Finché è un css posso capire, ma appena appena vuoi modificare un menu o un footer, sei "spacciato".
Invece ti fai il tuo bel sito, ti fai un file separato per ogni lingua e sei a posto.
Ci metti lo stesso tempo ma in futuro il lavoro ti sarà immensamente più facile e tu stesso ti sarai riconoscente.
Uno dei difetti, in buona fede per carità, che si fanno nello strutturare un sito, è pensarlo nell'immediato, perdendo di vista che in un futuro dovremo, volenti o nolenti, metterci nuovamente mano.
Ho visto gente prendere in mano script scritti da loro stessi ed esclamare: "chi è questo scemo che non ha scritto un commento! E io cosa ci capisco ora!" per poi scoprire che erano stati loro stessi.
E' successo recentemente anche a me: progetto mio, scritto codici, pagine su pagine, e quando dovevo commentare pensavo : " va beh, dai, lo faccio dopo".
Sono bastati 2 mesi e me lo ricordavo a stento.
Per fortuna scrivo chiaramente e pur di metterci mezz'ora in più, tengo i tab giusti per controllare che ogni funzione e condizione abbia un inizio ed una fine, ogni variabile dichiarata con altre e in blocchi, doppio a capo tra un argomento e l'altro se non chiusura e riapertura del tag php.
Questo per dirti che se vorrai cambiare il sito tenendo lo stesso contenuto o che tu voglia aggiungerci la lingua russa, ti basterà avere un sito collegato a un file con le costanti.
Codice PHP:
define("nomecostante","valorecostante");
//per impostazione tendo a mettere una k davanti al nome con iniziale in maiuscolo:
define("kNomevariabile","valorevariabile");
//così non ti sbagli mai!