Den Name einer $var wiedergeben?

measel101

Mitglied
Beispiel:

PHP:
$test = 'ich bin ein string :D';

//und am end hätte ich gerne soetwas:

"Die Variable $test hat den Wert 'ich bin ein string :D'."

Frage, wie komme ich an den Namen? Und wie gehts bei arrys, wenns überhaupt geht?
 
Hi
PHP:
$text = array();
$text[0] = "ich bin ein Array mit der nummer 0";
//array wurde bestimmt

/*Nun geben wir den Wert aus*/
echo "Die Variable text hat den Wert" . $text[0];
 
Code:
printf("\$test = \"%s\";", str_replace("\"", "\\\"", $test));
Das str_replace ist eigentlich nur da, damit auch die Anführungszeichen korrekt
dargestellt werden.
 
PHP:
$test = 'ich bin ein string :D';
// Variante 1
echo 'Die Variable $test hat den Wert ' . $test;
// Variante 2
echo "Die Variable \$test hat den Wert $test";
 
Ok, vielleicht hätte ich erwähnen sollen, dass ich daraus ne funktion machen wollte
PHP:
$test = 'ich bin ein string';
$abc= 123;

function get_dump($var)
{
    //meine zeugs + eure hilfe
}

get_dump($test);
get_dump($abc);

//retruns:

"Die Variable "test" enthält: 'ich bin ein string'"
"Die Variable "abc" enthält: 123"
 
Hi!

Das was du willst, geht so nicht.
Mit einigen Tricks geht es aber doch, du musst dafür allerdings bei aufruf auf die ' ' achten(Die mit einem Strich nehmen', nicht die mit 2"!), damit der Variablenname, und nicht der Inhalt übergeben wird!

Dann geht es so:
PHP:
<?php
$teststring = 'test';
$testinteger = 123;
$testarray = array('Test1', 'Test2');

varInfo('$teststring');
  echo'<br>';
varInfo('$testinteger');
  echo'<br>';
varInfo('$testarray');
  echo'<br>';
varInfo('$leer');
  echo'<br>';
varInfo('ung&uuml;ltiger variablenname bla..A6828//2(%")(%');

function varInfo($vtitle) {
  //Schauen, ob der variablnname gueltig ist:
  if( !preg_match('/^\$[a-zA-Z0-9]+$/', $vtitle) ) {
    print 'Fehler: "'.$vtitle.'" ist kein gueltiger Variablenname!'."\n";
    return FALSE;
  }
  //Den inhalt der variable besorgen:
  eval('global '.$vtitle.'; $vvalue = '.$vtitle.';');
  //Variablentyp bestimmen
  if( is_array($vvalue) )
    $vtype = 'Array';
  elseif( empty($vvalue) ) {
    print 'Die Variable "'.$vtitle.'" ist leer oder existiert nicht.'."\n";
    return TRUE;
  } else
    $vtype = is_string($vvalue) ? 'String' : 'Integer';
  //Ausgabe des Variablennames, des Typus und des Wertes:    
  print 'Die Variable "'.$vtitle.'" ist ein '.$vtype.' und besitzt die wertgkeit: ';
  eval(($vtype == 'Array') ? 'print_r($vvalue);' : 'print $vvalue."\n";');
  return TRUE;
}

Wenn du daran etwas nicht verstehst, so tuhe dir keinen Zwang an zu fragen.
 
Zuletzt bearbeitet:
Zurück