CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
07.04.2009, 11:29:09
|
Anfänger
|
|
Registriert seit: Apr 2009
Alter: 31
Beiträge: 20
|
|
Methoden Parameter direkt validieren
Servus,
habe mal ne Frage. Möchte in einer Klasse alle Parameter der Methoden direkt validieren.
Bisher habe ich immer dann das so gemacht:
PHP-Code:
$parameter = self::methode($parameter);
...
Aber das ist nervig, vor allem wenn ich irgendwie 5 Parameter habe und außerdem sind es einige Methoden.
__set() greift ja nur, wenn ich es in $this oder self speichere.
Gibt es so ne ähnliche Lösung für Parameter? oder allgemein alle lokalen Variablen der Klasse?
Gruß Sebastian
|
07.04.2009, 13:01:20
|
SELFPHP Experte
|
|
Registriert seit: Jun 2008
Alter: 15
Beiträge: 2.269
|
|
AW: Methoden Parameter direkt validieren
Irgendwo mußt du prüfen!
Nervig hin oder her... was sein muß, muß sein.
Prüfe die Parameter in der Methode, und wenn falsch, dann wirf eine Exception.
Zitat:
oder allgemein alle lokalen Variablen der Klasse?
|
Das ist doch Quatsch!
Der Schrott darf da erst gar nicht rein.
|
07.04.2009, 14:34:16
|
Anfänger
|
|
Registriert seit: Apr 2009
Alter: 31
Beiträge: 20
|
|
AW: Methoden Parameter direkt validieren
Hallo,
ich meinte sowas, dass immer wenn ich eine Variable deklariere, sie direkt von der methode geprüft wird. Also wenn jetzt die Variable $string_fuer_die_datenbank als erstes auftaucht, direkt von einer Funktion bzw. Methode geprüft wird.
Gruß Sebastian
|
07.04.2009, 14:38:45
|
SELFPHP Experte
|
|
Registriert seit: Jun 2008
Alter: 15
Beiträge: 2.269
|
|
AW: Methoden Parameter direkt validieren
Verstehe ich nicht!
Was willst du selbst deklarierte Variablen prüfen?
Traust du dir selber nicht?
Ausserdem:
Verzichte auf globale Variablen!
|
07.04.2009, 15:17:21
|
Anfänger
|
|
Registriert seit: Apr 2009
Alter: 31
Beiträge: 20
|
|
AW: Methoden Parameter direkt validieren
mit lokale Variablen meine ich Variablen, die nur in einer Methode existieren, also Attribute zähl ich nicht dazu.
Ich meine einfach nur, um das zu automatisieren, um mir den entsprechenden Code zu sparen, wenn ich immer einzeln meine Parameter überprüfe.
Also sowas wie __set() nur halt für lokale Variablen und nicht Klassen Attribute.
|
07.04.2009, 20:04:27
|
Anfänger
|
|
Registriert seit: Apr 2009
Alter: 31
Beiträge: 20
|
|
AW: Methoden Parameter direkt validieren
Die Methode soll nur gegen SQL Injections abriegeln, von daher ist der Datentyp egal.
|
08.04.2009, 09:42:46
|
SELFPHP Profi
|
|
Registriert seit: Apr 2008
Alter: 48
Beiträge: 1.938
|
|
AW: Methoden Parameter direkt validieren
Zitat:
Zitat von floorball92
[...] wenn ich immer einzeln meine Parameter überprüfe. Also sowas wie __set() nur halt für [...]
|
warum bringst du __set( ) immer wieder in zusammenhang mit validierung? aus dem handbuch:
Zitat:
__set() is run when writing data to inaccessible members.
|
und nichts anderes!
Zitat:
Zitat von floorball92
Die Methode soll nur gegen SQL Injections abriegeln
|
möglicherweise bringt's dir mehr, dieses anliegen mit uns zu diskutieren. ich habe den eindruck, du befindest dich auf dem holzweg.
cx
|
08.04.2009, 10:10:07
|
Anfänger
|
|
Registriert seit: Apr 2009
Alter: 31
Beiträge: 20
|
|
AW: Methoden Parameter direkt validieren
Zitat:
Zitat von DokuLeseHemmung
|
Ok, dass hört sich auch vernünftig an.
Zu ORM: habe schon öfters gehört, dass ORM ordentlich an der Performance nagt. Meine sogar, Carsten Möhrke wäre der gewesen, der dass gesagt hat.
Und zur MySQLi Klasse, habe ich das richtig verstanden, dort bin ich gegen sämtliche SQL Attacken gerüstet?
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 04:33:51 Uhr.
|