eigene function mit optionalen Variablen?

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

eigene function mit optionalen Variablen?

Beitrag von shwepsi »

Hallo,
ich wollte mal wissen ob es möglich ist in php Funktionen zu basteln die auch optionale Variablen aktzeptieren.

also ähnlich wie Standardfunktionen wie number_format, in der ja die Variablen 2-4 (Nachkommastellen, Dezimal Trennzeichen, Tausendertrennzeichen) optional sind, also nicht zwangsläufig angegeben werden müssen.

Grund dafür ist das ich die Smilies so abändern will das sie auch problemlos im AdminMenü benutzt und mit Dateien ausserhalb des rootordners angezeigt werden können.
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

hä wo ist das Problem?

function blubb ($wuff,$bla=true,$test='wasauimmer')
{
}
blubb('gdfgdfg');

???

oder noch ne Möglichkeit:
http://de3.php.net/manual/de/functions. ... e-arg-list
Benutzeravatar
eiskuh
Mitglied
Beiträge: 67
Registriert: 18.02.2005 17:11

Beitrag von eiskuh »

Klaro, ab PHP4 wird die variable Anzahl von Parametern in benutzerdefinierten Funktionen unterstützt. Um dann die Parameter zu behandeln, sind die Funktionen func_num_args(), func_get_arg() und func_get_args() nützlich.

Kleines Beispiel aus der Hilfe:

Code: Alles auswählen

<?php
function foo() {
    $numargs = func_num_args();
    echo "Anzahl der Argumente: $numargs<br>\n";
    if ($numargs >= 2) {
        echo "Das 2. Argument ist: " . func_get_arg (1) . "<br>\n";
    }
    $arg_list = func_get_args();
    for ($i = 0; $i < $numargs; $i++) {
        echo "Argument $i ist: " . $arg_list[$i] . "<br>\n";
    }
} 

foo (1, 2, 3);
?>
Weiteres hier:
http://www.php.net/manual/de/functions.arguments.php
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

Blutgerinsel hat geschrieben:hä wo ist das Problem?
ich habe solchen Code noch nie gesehen, und auch in dem PHP 4 Buch ist das mit keiner Silbe erwähnt (ausser bei Stanfunktionen)

und wenn man sowenig weiss kann man höchstens nach 'Funktion optionale Variablen' suchen, das da herzlich wenig produktives bei rumkommt muss ich wohl nicht erwähnen, oder ;P
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

brauchst dich doch nicht entschuldigen :wink:

Allgemein taugen PHP Bücher etc. nicht sonderlich viel ab einem gewissen KEnntnisstand, daher spontan im PHP Manual nach Funktionen gucken und tada :D
shwepsi
Mitglied
Beiträge: 1697
Registriert: 02.06.2003 14:37
Wohnort: NRW - immer dem Monitorleuchten folgen...
Kontaktdaten:

Beitrag von shwepsi »

naja ... wie auch immer

ES KLAPPT
Ich kann im ACP die Texte der Homepage bearbeiten (ähnlich CMS, nicht gaaaanz so extrem, aber für den Anfang nicht schlecht) und die Dateien können in jedem beliebigen Pfad liegen, und das ohne großen umbauten, einfach eine optionale Variable vor die Pfade *toll findet*

DANKE

Nun geht es an die Vorschau
Die Weisheit verfolgte mich sekundenlang...
Aber sie überholte mich und war fortan nicht mehr gesehen !!!
Antworten

Zurück zu „Coding & Technik“