que je fais les microoptimizations de finition sur mon site et a remarqué que dans plusieurs de mes fichiers php qui sont appelés via AJAX, j'ai une variable _GET $ qui est utilisé plusieurs fois dans le fichier php:
<?php include 'connect.php';
$var = $_GET['x'];
$var1 = $var . "...";
$var2 = $var . $var;
$sql = mysqli_query($cxn, "SELECT user FROM login WHERE login_id = '$var'");
//etc.
A ce point, ma pensée est que si le code a été réécrite comme:
<?php include 'connect.php';
$var1 = $_GET['x'] . "...";
$var2 = $_GET['x'] . $_GET['x'];
$sql = mysqli_query($cxn, "SELECT user FROM login WHERE login_id =
'".$_GET['x']."'");
//etc.
ce, alors que l'équivalent de la production au premier bloc de code, serait en fait plus lent parce que le code doit _GET $ 4 fois SEPARÉES x ' contre une fois dans le premier bloc de code. La première est plus rapide car cette copie de $ _GET ['x'] est accédée et traitée plus rapidement. De même, j'imagine que cela s'appliquerait également aux fonctions php() et $ _POST comme les suivants:
$unixtime = time();
while ($row = mysqli_fetch_assoc($sql)) {
$TimeVar = $unixtime; //Good....a copy of time() is used each time, so time is
calculated only once
}
vs:
while ($row = mysqli_fetch_assoc($sql)) {
$TimeVar = time(); //Bad....time() is recalculated for each iteration of the while loop
}
Alors, faites $ _GETs et _POSTs $ obtenir traitées séparément pour chaque exemple? Des fonctions telles que time()? Désolé pour les questions de niveau débutant ... espérons qu'il est OK :)
Quelle est la question réelle? :) –
Code 1 vs code 2 effectuera exactement la même chose. Vous n'avez pas à "obtenir" le tableau $ _GET chaque fois que vous l'utilisez. php traite la chaîne de requête avant que les scripts ne s'exécutent et elle existe comme toute autre variable après cela. –
Désolé pour ça! Ajout de questions à la fin –