MyBB.de Forum
[Erledigt]Frage zu: "eval()" - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Archiv (https://www.mybb.de/forum/forum-57.html)
+--- Forum: MyBB 1.2.x und älter (https://www.mybb.de/forum/forum-27.html)
+---- Forum: Allgemeiner Support (https://www.mybb.de/forum/forum-36.html)
+---- Thema: [Erledigt]Frage zu: "eval()" (/thread-2218.html)

Seiten: Seiten: 1 2


[Erledigt]Frage zu: "eval()" - Jan - 30.05.2006

Welche parameter sind bei eval() nötwendig und wofür zuständig?

PHP-Code:
    eval("\$variable = \"".$templates->get("test")."\";"); 
Was macht $variable?
Und was macht "test"?

und dann gleich noch:
Was passiert bei
PHP-Code:
outputpage($extern); 
Welche Funktion hat hier $extern ?

Jan


RE: Frage zu: "eval()" - Mak - 30.05.2006

Ich habe keine Ahnung Wink, aber das ist ja nicht deine erste Frage dieser Art und ich denke es wäre besser, wenn du dich damit an ein spezielles PHP-Forum wendest oder das in diversen Dokumentationen nachliest.


RE: Frage zu: "eval()" - computexx - 30.05.2006

Richtige Erklärung zu diveresen Codeschnipseln und Befehelen bekommst du immer auf www.php.net ... gib dort einfach mal eval() ein und du weißt was es macht Wink

eval führt zum beispiel den code aus der zuvor in einer Variable definiert wurde.


RE: Frage zu: "eval()" - StefanT - 30.05.2006

outputpage ist aber eine Funktion von MyBB.


RE: Frage zu: "eval()" - Jan - 30.05.2006

Dies sind aber spezielle Funktionen des MyBB. Ein normales PHP Forum hilft da leider nicht weiter.

Woher sollen die bitte wissen wie das Templatesystem des MyBB gehandhabt wird?

Normale PHP Fragen stelle ich hier ja auch nicht.


RE: Frage zu: "eval()" - computexx - 30.05.2006

Nochmal zur Erklärung ...

eval versucht den String als PHP Code auszugeben. Das heißt:

$variable = das Template test

$extern ist eine Variable die wohl irgendwo einen Wert zugeteilt bekommen hat, aber dazu bräuchte man mehr vom Code!


RE: Frage zu: "eval()" - Jan - 30.05.2006

Sicher?
Zitat:Beispiel 1. eval()-Beispiel (einfache Texteinfügung):
PHP-Code:
<?php
$string 
'Bierglas';
$name 'Binding-Lager';
$str 'Das ist mein $string, voll mit $name.<br>';
echo 
$str;
eval (
"\$str = \"$str\";");
echo 
$str;
?>
Das obige Beispiel gibt aus:
Code:
Das ist mein $string, voll mit $name.
Das ist mein Bierglas, voll mit Binding-Lager.
was ist den jetzt bitte $variable ?
PHP-Code:
eval("$variable = "".$templates->get("test")."";"); 
PHP-Code:
".$templates->get("test")." 
Ist das template das geladen wird.


RE: Frage zu: "eval()" - pmz-c3e - 30.05.2006

PHP-Code:
eval() 
führt Datenbank Code als PHP aus, damit werden also templates geparsed.

PHP-Code:
"\$variable = \"".$templates->get("test")."\";" 
bedeutet, dass das template mit dem Namen "test", das über "$templates->get("test")" ausgelesen wird, der $variable zugewiesen wird.

PHP-Code:
outputpage() 
ist eine in myBB definierte Funktion, die in keinem PHP-Manual steht.


RE: Frage zu: "eval()" - Jan - 30.05.2006

So, das erste dürfte verstanden sein. Jetzt bitte ich, jemanden der sich auskennt, die Funktion
PHP-Code:
outputpage() 
zu erklären, damit ich das Temlatesystem besser verstehen kann und die dateien entsprechend anpassen kann.


RE: Frage zu: "eval()" - computexx - 30.05.2006

Richtig! Nur führt er dies gleich aus!

Bei deinem Beispiel oben wird zuerst die Variable $str definiert mit dem Text. Danach wird sie mit echo ausgegeben, wie du siehst werden die Variablen $string und $name nicht ausgegeben, eh klar, ist ja kein echo oder dergleichen in der Nähe!

Bei eval() führt er aber die im $str enthaltetenen Variablen aus, somit erscheint der Text gleich als ausgabe Wink