RSS Feed

Dynamische Paramaterübergabe an PHP Funktionen

05.02.2008 by naden

Oft möchte man an eine PHP-Funktion eine nicht genau definierte Menge von Parametern übergeben, die auch nicht unbedingt immer einen vorher bekannten Type haben.

Sinn macht das immer dann, wenn eine Funktion z.B. zu einer Liste von Kategorie-Nummern Datensätze liefern soll oder auch für Debugzwecke, wenn man einfach sämtliche übergebene Funktionsparameter in eine Datei dumpen möchten.

Hier ein kleines Beispiel für eine “DumpToFile”-Funktion:

function DumpToFile()
{
 if( func_num_args() > 0 )
 {
  $args = array();
  foreach( func_get_args() as $arg )
  {
   array_push( $args, $arg );
  }
  if( ( $fh = fopen( 'dump.log', 'a' ) ) )
  {
   fprintf( $fh, "%s\n", implode( ', ', $args ) );
   fclose( $fh );
  }
 }
}
 
// mögliche Aufrufe
DumpToFile( 1, 2, 3 );
 
DumpToFile( 'name', $count, 223 );

Jeder Aufruf erzeugt eine Zeile in der Datei “dump.log”. Arrays und Objekte handelt das Beispiel allerdings nicht. Diese werden als “Array” oder “Object” in der Datei abgelegt.


Keine Kommentare »

Noch keine Kommentare

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>