background image

30

 

31

         if (!is_numeric($arg_list[$i]) || $arg_list[$i] < 0)    

32

 

33

             errorRedirect("Unexpected variable value", true);    

34

 

35

     }    

36

 

37

 }  

8、一个 php 文件处理输入,一个 class.php 文件处理具体功能

不让代码变得混乱的一个重要方法是:获取用户输入后,将其重定向到其它函数来

进行处理。原理非常简单,php 文件获得我们需要的任何输入,然后将其执行重定向到类

文件中的一个函数。举例来讲,假设有一个类似 index.php?page=profile&action=display”的
URL。由 profile.php

来检索该网址并得到操作是 display”。然后使用一个简单的 switch 函数,

我们来执行真正的显示函数:

38 require_once PROJECTROOT.'libs/messages.class.php';     
39

 

40 $message = new Message();     
41

 

42 switch ($action)   
43

 

44 {   
45

 

46

    case 'display':   

47

 

48

        $message->display();   

49

 

50

        break;     

51

 

52 ... 

如上所示,我使用了一个消息类,然后开始进行 switch 检查。$message 只是被类中的

调用函数使用的一个对象。

9、了解你的 SQL 语句,并总是对其审查(Sanitize)

正如我以前所提到的,任何 php 网站中最重要的部分有 99%的可能是数据库。因此,

你需要非常熟悉如何正确的使用 sql。学会关联表和更多高级技术。下面我将展示一个使用
MySQL 的函数示例,并使用本文第 7 条函数进行审查。

53 private function getSentMessages($id)    
54

 

55

 {    

56

 

57 $this->util->sanitizeInput($id);