PHP开发人员的十点建议

如果你使用一个大的镜子作为一个冲浪板会发生什么也许你会征服波在很短的时间,但你知道从你的内心深处,这不是冲浪的正确的选择。同样的道理也适用于PHP编程,尽管这个比喻听起来怪怪的。我们经常听到人们试图在一个周末,更多的时间学习PHP,但请给我看来,这是一个很好的方式来学习这门编程语言。

你为什么说学习PHP的过程不同于其他语言
在本质上,如果你掌握PHP语言做事情的方式,你将能够使用它,当您使用它,所以它值得你努力去了解这些方式。在PHP中,它往往是一种错误的方式来解决自己的心理问题。这并不是因为你是一个不好的程序员,但如果你想写出好的可维护的代码,有一些你必须使用标准的技能。我们在10大技巧你需要知道。

1。如何正确创建网站的索引页
首先要做的是创建一个网站的首页当您创建的每一个网站。如果你是一个PHP新手,当你写索引页,典型的方式是通过索引页面程序所需要的内容,并通过其他链接创建另一个页面。但是,如果你想学一个更有效的方法来实现PHP编程,你可以使用索引。phppage =家庭模式,许多网站都使用。

2。使用请求全局数组来捕获数据
事实上,我们没有任何理由使用_get美元美元和_post阵列攫取价值,_request美元全球阵列可以让你得到一个获取或形成的要求。因此,在大多数情况下,分析数据更高效的代码如下:
行动= isset(美元美元_request {整套' }){ }:整套的_request美元0;

三.与var_dump调试PHP代码
如果你在寻找PHP调试技术,我不得不说,var_dump应该是你正在寻找的目标。这个命令显示PHP信息能满足您所有的需求。大部分的调试代码是在PHP的值有关。

4、PHP处理的代码逻辑,Smarty处理表示层
Smarty模板的PHP模板引擎是一个用PHP编写的,是一个最著名的PHP模板引擎的行业。它将逻辑代码和外部内容。它提供了一种管理和使用,它用于混合HTML代码和PHP代码。简单地说,目的是使PHP程序员的前端工作人员分离,使程序员改变程序的逻辑不影响前台页面的设计人员,设计人员修改程序逻辑页不会影响的程序,在多人合作的项目尤为重要。

5。当您需要使用全局值时,创建一个配置文件
创造全球价值观是一个不好的做法,但有时候真的需要做的事情。这是一个好主意,因为数据库表或数据库连接信息使用全局值,但不在你的PHP代码中经常使用的全局值。此外,一个更好的方法是存储你的全局变量在config.php文件。

6,如果未定义,不能访问!
如果你已经创建了正确的页面,没有人有任何理由来访问外部的index.php或home.php.once index.php访问index.php页面,你可以通过变量打开所需要的页面,你的页面应该包含下面的代码:
定义('yourpage ',1);
然后,其他页面应该包括:
如果(!定义('yourpage '))死('access否认);
这样做的目的是防止直接访问你的其他PHP页面。这样,任何人谁试图不通过index.php访问其它网页将获得被拒绝的消息。

7。创建数据库类
如果您正在进行数据库编程(PHP中非常常见的任务),那么最好的方法是创建一个数据库类来处理任何数据库管理功能:
复制代码代码如下所示:
公共功能dbexec($查询)
{
$结果=;
如果(梨::误差($结果))
errorredirect($结果-> GetMessage(),真的);
其他的
返回$结果;
}

此函数只接收一个查询语句并执行它。它还处理可能出现的任何错误。您还可以在这里包含审计代码,但我更喜欢使用类似的审计功能:
复制代码代码如下所示:
检查给定的参数是否为整数值不小于0 -具有多个参数
sanitizeinput()函数
{
numargs美元= func_num_args();
arg_list美元= func_get_args();
为($我= 0;美元美元美元我<< numargs;i++){
如果(!is_numeric($ arg_list {我})| |美元美元arg_list {我} < 0)
errorredirect(意外变量值
}
}

8。一个PHP文件处理输入,一个class.php文件句柄的具体功能
为了避免代码混乱的一个重要途径是获取用户输入,并将其重定向到处理等功能。原理很简单,和PHP文件,再输入我们需要再重定向到类文件中的一个功能。例如,假设有一个URL相似指数。phppage profileaction = =显示URL是由profile.php和操作显示检索。然后我们用一个简单的开关函数执行的实时显示功能:
复制代码代码如下所示:
require_once projectroot。'libs /信息。类。php;
$ =新消息();
开关($动作)
{
case'display:
$ > >显示();
打破;


如上所示,我使用了一个消息类,然后开始了开关检查。

9。了解你的SQL语句经常复习它(消毒)
正如我前面提到的,任何PHP站点中最重要的部分中有99%个可能是数据库。因此,您需要非常熟悉如何正确使用SQL。学习关联表和更高级的技术。下面,我将展示一个使用mysql的函数示例,并使用本文的第七功能来回顾它。
复制代码代码如下所示:
私有函数getsentmessages($id)
{
美元->工具-> sanitizeinput($id);
pm_table = = { 'config美元美元的} { 'privatemsg};
为用户'config } { = {美元的'users};
为SQL =选择点。*,usr.username从pm_table PM name_sender美元美元,用户使用
在id_sender = $ id'and sender_purge =虚假和usr.id = pm.id_receiver和is_read =真
通过date_sent DESC ;
结果=美元美元-> dbqueryall($ SQL);
返回$结果;
}

首先,我们检查用户输入(通过get变量传递消息ID),然后执行SQL命令。

10,当您只需要一个对象时,使用一个模式
在PHP中的一个相当普遍的情况,我们只需要创建一个对象一次,然后用它贯穿于我们的整个计划。一个好的例子是smarty变量,可到处一旦被初始化。这一状况最好的实现是单例模式,示例代码如下:
复制代码代码如下所示:
smartyobject()函数
{
如果($ = { 'config} { 'smartyobj} = 0)
{
Smarty =新smartygame(美元);
{ } { 'config全球美元的'smartyobj} = $ Smarty;
}
其他的
Smarty = { 'config美元美元=} { 'smartyobj};
返回的Smarty;
}

注意,我们有一个全球性的smarty变量(这是初始化在config.php中的例子)。如果它的值是0,我们将创建一个新的Smarty对象。否则,这意味着对象已经创建,我们只需要返回它。