Heike: Funktionsaufruf

Halli Hallo,

einfache Frage, was ist hier den jetzt falsch?

  
<?php  
  
function GetRandomText() {  
  $anzahl_zeichen = rand($min, $max);  
  $zeichen = "abcdefghijklmnopqrstuvwxyz";  
  $text  = "";  
  for ($i = 0; $i < $anzahl_zeichen; $i++) {  
    $text .= substr($zeichen, mt_rand(0, 25), 1);  
  }  
  return $text;  
}  
  
$min = 3;  
$max = 9;  
$zufall = GetRandomText();  
echo "Zufallskombination: <b>".$zufall."</b>";  
  
?>  

Das Ziel sollte erkenntlich sein. Ich möchte eine Zeichenkombination von minestens 3 Zeichen und maximal 9 Zeichen. Verwenden sollen dabei die Zeichen der Zeichenkette $zeichen.

Danke

  1. Hallo Heike,

    Das Ziel sollte erkenntlich sein. Ich möchte eine Zeichenkombination von minestens 3 Zeichen und maximal 9 Zeichen.

    Dann solltest du der Funktion das auch mitteilen (in Form von Parametern). Deine Variablen $min und $max die du außerhalb der Funktion definierst sind innerhalb der Funktion nicht bekannt - wenn du error_reporting ordentlich eingestellt hättest (also dir auch Notices anzeigen lassen würdest) hätte dir das PHP aber auch gesagt.

    Gruß,
    Tobias

    1. Hallo Tobias,
      danke für den schnellen Tip.

      error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

      zeigte mir aber kein Fehler an.

      Dennoch funktoniert es wenn min und max übergeben werden.

      1. Hallo Heike,

        error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

        zeigte mir aber kein Fehler an.

        Dennoch funktoniert es wenn min und max übergeben werden.

        Sollte aber - sofern du die Variablen nicht übergibst, wenn du sie übergibst sind die Variablen ja nicht mehr undefiniert.

        Gruß,
        Tobias

      2. مرحبا

        error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

        zeigte mir aber kein Fehler an.

        Dann hast du es falsch gemacht. http://codepad.org/BAVqACON

        mfg