Verständnisfrage andere Zuweisung in PHP
bearbeitet von Jörg ReinholzMoin!
Beispiel:
~~~PHP
<?php
// Beim Schreiben des Pogrammms ist nicht bekannt, welche Variable einen bestimmten Wert (hier: 'bar') erhält.
// Aber während des Programmablaufes ist es das. Der Name der Variable soll 'foo' sein
$vName='foo';
// So wird es gemacht:
${$vName}='bar'; // $$vName='bar'; geht übrigens auch!
//Und das klappt auch:
echo $foo, "\n";
~~~
1. Das weicht aber schon von Deinem Beispiel ab...
2. Die Verwendung wird allgemein (aus den gleichen Gründen wie die Verwendung von eval auch) missbilligt. Grund: Es tauchen wie hier Variablen auf, deren Herkunft höchst mühseelig zu ermitteln ist und es werden Variablen ggf. überschrieben ohne dass dieses dem Plan des Programmierers entspricht. Besser wäre es allenfalls einen Hasch zu benutzen:
~~~PHP
<?php
// Beim Schreiben des Pogrammms ist nicht bekannt, welche Variable einen bestimmten Wert (hier: 'bar') erhält.
// Aber während des Programmablaufes ist es das. Der Name der Variable soll 'foo' sein:
$vName='foo';
// So wird es gemacht:
$vars[$vName]='bar';
//Und das klappt auch:
echo $vars['foo'], "\n";
~~~
Jörg Reinholz
Verständnisfrage andere Zuweisung in PHP
bearbeitet von Jörg ReinholzMoin!
Beispiel:
~~~PHP
<?php
// Beim Schreiben des Pogrammms ist nicht bekannt, welche Variable einen bestimmten Wert (hier: 'bar') erhält.
// Aber während des Programmablaufes ist es das. Der Name der Variable soll 'foo' sein
$vName='foo';
// So wird es gemacht:
${$vName}='bar'; // $$vName='bar'; geht übrigens auch!
//Und das klappt auch:
echo $foo, "\n";
~~~
1. Das weicht aber schon von Deinem Beispiel ab...
2. Die Verwendung wird allgemein missbilligt. Grund: Es tauchen wie hier Variablen auf, deren Herkunft höchst mühseelig zu ermitteln ist und es werden Variablen ggf. überschrieben ohne dass dieses dem Plan des Programmierers entspricht. Besser wäre es allenfalls einen Hasch zu benutzen:
~~~PHP
<?php
// Beim Schreiben des Pogrammms ist nicht bekannt, welche Variable einen bestimmten Wert (hier: 'bar') erhält.
// Aber während des Programmablaufes ist es das. Der Name der Variable soll 'foo' sein:
$vName='foo';
// So wird es gemacht:
$vars[$vName]='bar';
//Und das klappt auch:
echo $vars['foo'], "\n";
~~~
Jörg Reinholz
Verständnisfrage andere Zuweisung in PHP
bearbeitet von Jörg ReinholzMoin!
Beispiel:
~~~PHP
<?php
// Beim Schreiben des Pogrammms ist nicht bekannt, welche Variable einen bestimmten Wert (hier: 'bar') erhält.
// Aber während des Programmablaufes ist es das. Der Name der Variable soll 'foo' sein
$vName='foo';
// So wird es gemacht:
${$vName}='bar';
//Und das klappt auch:
echo $foo, "\n";
~~~
1. Das weicht aber schon von Deinem Beispiel ab...
2. Die Verwendung wird allgemein missbilligt. Grund: Es tauchen wie hier Variablen auf, deren Herkunft höchst mühseelig zu ermitteln ist und es werden Variablen ggf. überschrieben ohne dass dieses dem Plan des Programmierers entspricht. Besser wäre es allenfalls einen Hasch zu benutzen:
~~~PHP
<?php
// Beim Schreiben des Pogrammms ist nicht bekannt, welche Variable einen bestimmten Wert (hier: 'bar') erhält.
// Aber während des Programmablaufes ist es das. Der Name der Variable soll 'foo' sein:
$vName='foo';
// So wird es gemacht:
$vars[$vName]='bar';
//Und das klappt auch:
echo $vars['foo'], "\n";
~~~
Jörg Reinholz
Verständnisfrage andere Zuweisung in PHP
bearbeitet von Jörg ReinholzMoin!
Beispiel:
~~~PHP
<?php
// Beim Schreiben des Pogrammms ist nicht bekannt, welche Variable einen bestimmten Wert (hier: 'bar') erhält.
// Aber während des Programmablaufes ist es das. Der Name der Variable soll 'foo' sein
$vName='foo';
// So wird es gemacht:
${$vName}='bar';
//Und das klappt auch:
echo $foo, "\n";
~~~
Das weicht aber schon von Deinem Beispiel ab...
Jörg Reinholz