PHP elke var een waarde meegeven

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • aex351
  • Registratie: Juni 2005
  • Laatst online: 02:04

aex351

I am the one

Topicstarter
Nu ik voor de grap E_ALL + NOTICE heb aangezet, krijg ik dus omdat ik geen isset() enz heb gebruikt allemaal NOTICEN terug geslingert.

Ik ben op het idee gekomen om binnen me framework class een kleine functie te maken die de waardes steeds moeten controleren en ten alle tijden een waarde moeten meegeven.

Nu is mijn vraag of dit wel slim is om het op deze manier te doen.

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
//a.php  een var
$command    = $FRAMEWORK_CLASS -> var_check ('command'  , 'GET') ;

//class.php stukje code

    public function var_check ($input, $methode) {
        //zet var :
        $output = '';
        
        //GET
        if ( isset ($methode ) ) {
            if ( $methode == 'GET' ) {
                if (isset ( $_GET[$input] )) {
                    $output = $_GET[$input] ;
                }
                else {
                    $output = '';
                }
            }
            return $output ;
        }

[ Voor 5% gewijzigd door aex351 op 30-07-2005 22:40 ]

< dit stukje webruimte is te huur >


Acties:
  • 0 Henk 'm!

  • GambitRS
  • Registratie: Juni 2001
  • Laatst online: 13-06-2013

GambitRS

w00t

Ik kan geen reden bedenken waarom dit niet slim zou zijn. misschien dat het iets korter kan door
PHP:
1
 return $_Get[$input];

en
PHP:
1
 return '';

te gebruiken.

Ik vraag me af of dit ook nog correct is:
PHP:
1
2
3
4
5
6
public function var_check ($input='') {
     if (isset ( $_GET[$input] ))
        return $_GET[$input];
     else
        return '';
}


of zelfs dit:
PHP:
1
2
3
public function var_check ($input='') {
   return $_GET[$input];
}

[ Voor 78% gewijzigd door GambitRS op 30-07-2005 22:50 ]

MechWarrior || Monsters Game


Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 18-09 16:28

Bosmonster

*zucht*

Waarom zo moeilijk doen met een string van de array doorgeven?

PHP:
1
2
3
4
5
public function var_check ($input, &$methode) {
   return isset ($methode[$input]) ? $methode[$input] : '';
}

$command = $FRAMEWORK_CLASS -> var_check ('command'  , $_GET);


Maar ja.. dan zie je zelf dat je framework-aanroep nog langer is dan wat je functie eigenlijk doet...

Handiger is om ook toe te voegen bijvoorbeeld wat voor data je opvraagt (int, float, string) en direct te zorgen voor de juiste casting.

[ Voor 50% gewijzigd door Bosmonster op 30-07-2005 23:15 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Voor jouw probleem is juist de functie isset() in het leven geroepen.

Acties:
  • 0 Henk 'm!

Verwijderd

Wel handig:

foreach($_GET as $key=>$value) {

}

Hierdoor worden bij het verwerken van de pagina gelijk alle get vars gecontroleerd. Dus hoef je het niet bij iedere var handmatig te doen.