URL: https://www.overclockers.at/coding-stuff/php5_overloading_133762/page_1 - zur Vollversion wechseln!
Spiel grad ein wenig mit php5 rum -> gibts da wirklich kein constructor overloading oder bin ich einfach zu dumm dafür?
sicher geht das...
da bist bei mir übrigens an der richtigen stelle - hab mich inzwischen schon sehr viel mit dem neuen zeug auseinandergesetzt - kannst mich ja auch im icq anquatschen... 
na gottseidank, schön wäre aber noch gewesen wenn du gesagt hättest wie es geht 
muss ich da mit __call hantieren? denn zwei __construct erlaubt er nicht wirklich.
aso - wartamal - willst du constructors von parent-classen overloaden (was ich jetzt annahm) oder innerhalb einer class?
innerhalb einer wirds kompliziert, es gibt da ja zwar eine schöne fertige funktion fürs overloaden, aber bei einem constructor verwendet er die __call function nicht, wodurch das useless wird
aber normal braucht man das overloading nicht so wie es in java normal verwendet weil man ja sowieso die optionalen argumente hat, und keine festen variablentypen und wwi...
naja, ich bin das irgendwie von c++ gewohnt meinen klassen mehrer konstruktoren zu verpassen - also schon alles innerhalb einer klasse.
also ein konstruktor für 2 argumente, einer für 3 usw.
naja, das is ja in php durch die optionalen argumente wie gesagt eher useless, und ist für die performance auch besser so.
naja, auf jeden fall kannst du deinen eigenen constructor machen, und den per __call "overloaden" und halt immer mit ->constructor aufrufen, aber davon rate ich dir ab, weil das alles etwas wackelig ist, und im endeffekt wenig sinn hat
naja, aber trotzdem geb' ich dir recht dass sowas "dazugehören" sollte, aber php5 is auch noch ziemlich viel krücke - vor allem auch bei den exceptions, ich hoffe in den bereichen auf wesentliche verbesserungen mit den nächsten versionen...
was meinst du mit optionalen argumenten?
man hat zwar schnell was zusammengeschustert in php...aber ich find die sprache so dermaßen schlecht und hässlich....das traurige ist nur, dass ich keine alternative hab weil anderer webspace meist zu teuer ist.
bei welchem provider hast du webspace mit php5 aber ohne cgi?
myfunc(x[,y[,z]])
im script: function myfunc($x,$y=0,$z=1000) {;}
werd ich mal probieren
naja..mit cgi kann ich auch nix anfangen, ich dachte da mehr an java oder asp.net
Hi,
ich würde mich für eine der folgenden methoden entscheiden:
Anhand der Summe der übergebenen Parameter
Code: PHPclass Sample1 { public function __construct() { $arguments = func_get_args(); $argumentCount = count( $arguments ); switch ( $argumentCount ) { case 1: doSomething( $argument[0] ); break; case 2: doSomethingElse( $argument[0], $argument[1] ); break; default: break; } } }
Code: PHPclass Sample2 { public function __construct( $arg1, $arg2 = null, $arg3 = null ) { switch ( false ) { case is_null( $arg3 ): doSomething( $arg1, $arg2, $arg3 ); break; case is_null( $arg2 ): doSomethingElse( $arg1, $arg2 ); break; default: doDefaultOpertation( $arg1 ); } } }
Was paszt bei denen nicht? ErklaerZitatvor allem auch bei den exceptions, ich hoffe in den bereichen auf wesentliche verbesserungen mit den nächsten versionen...
Entwickle seit ein paar Monaten an einem groesserem Projekt, Exception bisher kein Problem gehabt.Also, dann versuch mal eine PHP-Interne Exception abzufangen 
oder versuch's nicht, es geht nämlich nicht... Als Grund wird genannt, dass das ja Errors und net Exceptions sind... naja *hust* 
@watchout
verwendest du ein buch zum erlernen von php5 oder nur die online doku? wenn printmedium, dann sag bitte welches, danke 
doku, und try and fail - wobei bei php5 leider sehr viel fail dabei war 
man darf aber nicht vergessen dass es immer noch eine wesentliche verbesserung zum 4er is' - und dass der Hauptgrund, warum man keine Exceptions der PHP-Funktionen abfangen kann wahrscheinlich darin liegt, dass die Programmierer der Extensions darauf pfeifen sich gedanken darüber zu machen, was jetzt nun wirklich eines Errors würd ist, und was man auch mit einer Exception bewältigen kann.
denn ich kann mir kaum vorstellen, dass es keine funktionalitäten für exceptions im code geben sollte...
Du redest jetzt von Fehlverhalten von Funktionen, die aber keine 'echte' Exception schmeissen, sondern einfach nur ein Warning ode r Fatal zurueckliefern, obwohl eine echte Exception sinniger waere?
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026