Ein paar Fragen bezüglich Standard-Variablen und Auslastungsverteilung

Alice

Erfahrenes Mitglied
Hallo wie der Titel des Thread bereits aussagt, habe ich zwei Fragen zu PHP.

Standard-Variablen:
Bei manchen Funktionen in PHP werden einige Variablen ja mehrfach verwendet wie z.B. bei diesem Code hier.

PHP:
if ($wunsch_font == 'Automatisch') {
    $Arial_Font = array();
    for ($i=0; $i < strlen($var1); $i++)
    $Arial_Font[] = 'Arial_Normal';
}

Ich meine z.B. folgende Variable:
PHP:
$i

Meine Frage dazu:
Diese sogenannte Variable taucht mittlerweile locker 20 mal in meinem Skript auf. Kann das zu Problemen führen? Soll ich statt "$i" besser "$a" oder "$b" verwenden damit es zu keinen Rechenfehlern kommt?

Auslastungsverteilung:
Mein PHP-Skript in in einem bestimmten Muster aufgebaut.

PHP:
<?php

   if (isset($_POST['do']) && $_POST['do'] == 'ok') {

   // CODE CODE CODE CODE CODE CODE CODE CODE CODE CODE
   // In diesem Abschnitt werden die POST-Angaben den Variablen zugeordnet und die Variablen abgesichert.
   // Des Weiteren werden die POST-Angaben (fast alle) validiert.
   // In diesem Abschnitt sind auch Voreinstellungen, Grundeinstellund und einige Berechnungen zu finden.
   // CODE CODE CODE CODE CODE CODE CODE CODE CODE CODE

   if (preg_match(...)) {

   // CODE CODE CODE CODE CODE CODE CODE CODE CODE CODE
   // In diesem Abschnitt wird viel gerechnet. Unter anderem werden hier die späteren Dimensionen der zu erstellenden Grafik ermittelt.
   // Des Weiteren werden hier auch "Virtuelle-Grafiken" (im RAM) erstellt.
   // Im letzten Teil werden die Grafiken dann tatsächlich verarbeitet.
   // CODE CODE CODE CODE CODE CODE CODE CODE CODE CODE

   }
      else 
   {

?>

   <div style="text-align: center; font-weight: bold;">Kein Avatar erstellt</div>

<?php

   }
   }

?>

Der Teil mit dem
PHP:
 if (preg_match(...)) {
ist praktisch eine Trennlinie.

Wie man sehen kann ist das Skript in zwei Teile geteilt. Also einmal vor und einmal nach der preg_match Prüfung.

Ich frage mich jetzt welche Arten von Code ich wo genau verlagern soll.

Ich denke es wäre unsinnig Rechenintensiven Code vor das preg_match einzubauen wenn das Skript auf Grund eines Eingabefehler des Usern abbricht und die Berechnung für die Katz war.

Sehe ich das richtig oder eher nicht?

Wie würdet ihr das machen?

PS: Im ersten Abschnitt wird keine einzige Grafik geladen, vearbeitet oder benutzt.
 
FOR-Schleifen sind wie folgt aufgebaut: Startwert des Inkrement setzen, Prüfbedingung, Inkrement verändern. Du setzt also jedes mal $i neu und somit ist es egal, welchen Wert diese Variable vorher hatte. Da du die Variable auch nur als "temporäre" Variable nutzt, kannst du sie nach belieben in dieser Schleife nutzen.

Ansonsten sollte der Grundaufbau eines Skriptes so sein: entweder Skript und HTML-Quelltext komplett trennen oder Skript am Anfang ausführen und am Ende Quelltext ausgeben.

Danach sollte es logischerweise so sein, dass rechenintensive Skriptteile nur ausgeführt werden, wenn notwendigt, wie schon richtig erkannt hast.
 
Mehrere for-Schleifen hintereinander mit derselben Variable ($i) sind kein Problem. Es gibt aber auch Fälle, wo du z.B. zwei oder mehrere for-Schleifen verschachteln musst. Hier darfst du nicht zwei Mal dieselbe Variable setzen, sonst kommt dein Script durcheinander.
 
Zurück