Originariamente inviato da daniele_dll
2° Interpretare PHP è due volte e passa più lento di leggere un file di testo ed eseguire svariate operazioni

ad es... un file php che contiene
codice:
$array = array(
    'main' => 1,
    'header' => 2,
    'body' => 3,
    'templates' => 4,
    'structure' => 5,
    'footer' => 6
  );
è 2 volte + lento di una cosa di questo tipo

un file che contiene la lista
codice:
main,1
header,2
body,3
templates,4
structure,5
footer,6
e un file che interpreta il contenuto mettendolo in un'array
codice:
$content = file('list.dat');
while(list(, $value) = each($content)) {
  if (!$value) continue;
  
  list($key, $line) = explode(',', $value);
  $array[$key] = $line;
}
Questa cosa mi ha incuriosito e così ho fatto alcuni semplici test usando proprio gli esempi di codice da te postati e ho ottenuto risultati assai differenti da quanto dici.

Sulla mia macchina facendo 10000 include del file .php contenente l'array, ci mette in media 12 secondi e spiccioli.

Usando il secondo metodo (dati nel file .txt), quello che tu dici essere più veloce, iterando lo stesso procedimento 10000 volte ci mette in media 16 secondi.
Quindi, contrariamente alle aspettative, è circa un 33% più lento.

Ho pensato "magari è perchè c'è poca roba dentro, vediamo se aumentando i dati elaborati il discorso cambia".
Così nel file con l'array ho ripetuto la dichiarazione dello stesso 8 volte. Stessa cosa nel file di dati, ho ripetuto le righe di testo 8 volte.
Stesso numero di iterazioni: 10000.

L'inclusione del file php ci mette in media 20 secondi.
La lettura del file di dati 27, quasi 28 secondi.
Circa un 35% più lento, sembrerebbe quindi addirittura peggiorare all'aumentare dei dati.

Non so, magari ho sbagliato qualcosa io nei test, però i dati sembrano contrastare con la tua ipotesi.