php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 24.12.2006, 18:31  
Gast
 
Beiträge: n/a
Standard [Erledigt] optionale Parameter mit Funktion im Defaultwert

Hiho,

ich habe eine Funktion mit einem optionalem Parameter.
Als Standardwert für diese ist eine andere Funktion angegeben, das geht aber leider nicht. Wie kann man das am besten lösen?

PHP-Code:
function abc$a$b$c getVarC() )
{
    
// blabla

gruß
dmx
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 24.12.2006, 19:48  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Mh also weiß es nicht aber komisch dass es nicht funktioniert! Aber hier nen Workaround:

PHP-Code:
<?php
function abc ($a$b$c FALSE) {
    if (!
$c$c getVarC();
    
// bla
}
?>
Musst halt kucken welche Werte in $c stehen können! Bei TRUE/FALSE musste eben als default Wert was anderes 0/1 oder nen String setzen.

Soar das Kristnixkind kommt ich muss weg
Flor1an ist offline  
Alt 24.12.2006, 22:28  
Gast
 
Beiträge: n/a
Standard

so hab ich es mir auch überlegt, gefällt wir aber irgendwie noch nicht.^^
gibt es da noch andere möglichkeiten?

gruß
dmx
 
Alt 25.12.2006, 00:18  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Also ich kann mir jetzt keine bessere Art vorstellen. Wo ist das Problem, du kannst es doch so machen! Oder gleich richtig überprüfen ob überhaupt $c übergeben wird oder nicht.

PHP-Code:
<?php
if (empty($c)) $c getVarC();
abc($a$b$c);
?>
Flor1an ist offline  
Alt 25.12.2006, 02:37  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von RaZoR
Mh also weiß es nicht aber komisch dass es nicht funktioniert!
Was genau findest Du daran jetzt komisch, dass es funktioniert wie im Handbuch beschrieben?

Zitat:
Zitat von php.net
The default value must be a constant expression, not (for example) a variable, a class member or a function call.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 02.01.2007, 13:51  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

du kannst ja auch null statt false (mit dem identitäts-operator ===, nicht mit ==) verwenden, das kommt der sache wohl näher. desweiteren könnte die von func_num_args() gelieferte parameteranzahl ausgewertet werden und bei bedarf die funktion aufgerufen werden.
nikosch ist offline  
Alt 02.01.2007, 15:42  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von Der_Gerhard
Zitat:
Zitat von RaZoR
Mh also weiß es nicht aber komisch dass es nicht funktioniert!
Was genau findest Du daran jetzt komisch, dass es funktioniert wie im Handbuch beschrieben?

Zitat:
Zitat von php.net
The default value must be a constant expression, not (for example) a variable, a class member or a function call.
Nicht direkt komisch aber ich hätte mir auch denken können dass man eine Funktion als Parameter aufruft und der Rückgabewert dann als Parameter verwendet wird. Aber ist ja nicht so ...
Flor1an ist offline  
Alt 02.01.2007, 21:01  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

PHP-Code:
<?php function abc$a$b$c null 

    if (
$c===null$c getVarC();
    
//...
}
__________________
mod = master of disaster
Waq ist offline  
Alt 02.01.2007, 21:17  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Mh ja gleicht meiner Funktion oder?
Flor1an ist offline  
Alt 02.01.2007, 21:26  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

Naja, logisches not und empty sind da etwas grobschlächtig, da sie den Inhalt der Variable auswerten und nicht ob sie Inhalt hat.
__________________
mod = master of disaster
Waq ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JS: Einführung - Javascript im Schichtenmodell nikosch Tutorials 4 11.04.2009 17:06
Funktion mehrere optionale Parameter GSJLink PHP Tipps 2008 10 28.09.2007 17:52
Komplexe Funktion: +Übersichtlichkeit, -Performance Jacks Rache PHP Tipps 2006 3 07.06.2006 14:22
Parameter überschreiben Igäl PHP Tipps 2006 8 04.06.2006 19:55
Variable als optionalen Parameter? Mex PHP Tipps 2006 3 20.04.2006 07:05
Parameter an eine bestehende Funktion übergeben. Daskaras HTML, Usability und Barrierefreiheit 6 29.11.2005 10:14
PHP-GTK Tutorial Beitragsarchiv 9 02.11.2005 21:07
Rückgabewert einer rekrusiven Funktion PHP-Fortgeschrittene 7 06.10.2005 18:44
(schnellere) Funktion zum Zusammenfassen von CSS PHP-Fortgeschrittene 21 08.08.2005 16:47
Funktion in einer Funktion aufrufen? PHP Tipps 2005-2 11 14.06.2005 15:14
functionen - optionale Parameter PHP Tipps 2005 7 23.05.2005 19:08
[Erledigt] Wie kann ich beliebig viele Werte an eine Funktion übergeben PHP Tipps 2005 11 25.01.2005 10:44
[Erledigt] optionale uebergabeparameter in selbstdefinierter funktion PHP Tipps 2004 2 01.11.2004 15:04
[Erledigt] Parameter an eine funktion übergeben PHP Tipps 2004 9 18.08.2004 14:14
[Erledigt] Referenz auf Funktion übergeben PHP-Fortgeschrittene 7 20.07.2004 09:51

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
javascript optionale parameter, java optionale parameter, optionale parameter java, js optionale parameter, php übergabeparameter default, java funktionen optionale parameter, java optionaler parameter, php function parameter default, java optional parameter, javascript übergabeparameter default, java optional parameters, optional parameter java, http://www.php.de/php-tipps-2007/43130-erledigt-optionale-parameter-mit-funktion-im-defaultwert.html, javascript function default wert, javascript funktion optionaler parameter, optionaler übergabeparameter php, php unktionen default wert übergeben, optionale übergabe von parameter java, javascript function optional parameter, javascript optionale übergabe

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:39 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.