Einzelnen Beitrag anzeigen

Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#10

Re: [PHP] Hash-Arrays in Strings

  Alt 3. Jun 2006, 12:48
Hier mal ein Tipp: wenn du keine Variable im String hast, verwende ' anstatt ". Der Parser geht bei Strings, die von "" umschlossen sind, durch und ersetzt alle Variablen mit deren Wert. Es ist also viel langsamer, wenn du keine Variable in so einem Block drinsteht. Da ist es besser du sparst dem Parser die Arbeit und verwendest '.

Zum Code: das geht ab mindestens PHP3, und wenn du noch sowas verwendest wirds Zeit dass ich dir nen Exorzisten nach Hause schicke. Entweder PHP 4.4.2, oder 5.1.x, aber alles was aelter ist kannste zum Fenster rauswerfen; das is einfach nicht.

Ich versteh ehrlich gesagt dein Problem nicht. Die Zeile hier:
Code:
eval("\$objectbit.=\"".getTemplate("object")."\";");
muesste er ohne Probleme durcharbeiten. So, und jetzt kommt mal ein Tipp: mach in deinem Script ganz ganz ganz am Anfang folgendes:
Code:
error_reporting(E_ALL);
Dann verwendest du mal eine nicht initalisierte Variable:
Code:
echo $foobar;
Wenn dir dein Server keine Warnung auszeigt, dann wird es Zeit eine lokale Entwicklungsumgebung einzurichten, in der error_reporting auf E_ALL und show_errors = 1 ist. Warum? Weil du ja sehn solltest, ob irgendwelche Fehler auftreten. Dann wuerde dir der Parser auch sagen, wenn was im eval() fehlschlaegt. Es ist zwar komplizierter zu debuggen, aber immerhin.

Und jetzt kommt noch ein gut gemeinter Tipp: Gib mal ordentlich Code her. Mit einer Zeile koennen wir nicht viel anfangen. Warum?
Naja, die Zeile:
Code:
eval("\$objectbit.=\"".getTemplate("object")."\";");
muesste so funktionieren, aber wenn der vollstaendige Code so aussieht:

Code:
function getObjectBit()
{
  $objectbit = '';
  eval("\$objectbit.=\"".getTemplate("object")."\";");
  return $objectbit;
}
dann glaub ich dir auch dass da nichts drin steht, ne. da muss naemlich vor Zeile 3 noch ein
Code:
global $object;
hin, sonst macht das ja keinen Sinn.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat