PHP 中的设计模式
<p>本文主要讨论下Web开发中,准确而言,是PHP开发中的相关的设计模式及其应用。有经验的开发者肯定对于设计模式非常熟悉,但是本文主要是针对那 些初级的开发者。首先我们要搞清楚到底什么是设计模式,设计模式并不是一种用来解释的模式,它们并不是像链表那样的常见的数据结构,也不是某种特殊的应用 或者框架设计。事实上,设计模式的解释如下:</p> <pr...
51工具盒子
<p>本文主要讨论下Web开发中,准确而言,是PHP开发中的相关的设计模式及其应用。有经验的开发者肯定对于设计模式非常熟悉,但是本文主要是针对那 些初级的开发者。首先我们要搞清楚到底什么是设计模式,设计模式并不是一种用来解释的模式,它们并不是像链表那样的常见的数据结构,也不是某种特殊的应用 或者框架设计。事实上,设计模式的解释如下:</p> <pr...
序列化是将变量转换为可保存或传输的字符串的过程;反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性。 1 . serialize和unserialize函数 这两个是序列化和反序列化PHP中数据的常用函数。 ```lang-php <?php $a = array('a' =&g...
一. 简单直接不顾后果型 ```lang-php <?php ignore_user_abort(); //关掉浏览器,PHP脚本也可以继续执行. set_time_limit(0); // 通过set_time_limit(0)可以让程序无限制的执行下去 ini_set('memory_limit','512M'); // 设置内存限制...
<p>PHP弱类型简介</p> <p>在PHP中,可以进行一下的操作。</p> <pre><code>$param = 1; $param = array(); $param = "stringg"; </code></pre> <p>...
1、目标站点环境为:Windows+Apache+Mysql+PHP 2、存在SQL注入,能否直接写一句话木马 3、存在SQL注入,获取数据库中用户口令,登录应用系统后上传webshell 4、获取数据库口令登录phpMyAdimin,用phpMyAdmin写入一句话木马不想因为使用扫描工具的缘故,导致服务器出现不稳定的现象,所以就纯手工咯。 下面具体来说明下: ...
<p>1 . 统一的编码规范</p> <p>编码规范往简单说其实就是三个方面:</p> <pre><code>换行 空格 变量命名 放在 PHP 里面,还有一些附加的地方,比如关键字大小写,语法糖的使用(array() 与 [] 等)的问题。之前整理过 PSR 的标准,也找过 php-cs-fixer 这样...
<p>启用 php-fpm 的 slow log 日志,查看执行时间过长的php文件,并将执行时间过长的进程直接终止掉!看看效果如何!</p> <p>具体操作方法也简单,就修改一个文件,执行命令:# vi /usr/local/php/etc/php-fpm.conf</p> <p>PHP 5.3.3 之前版本设置如下...
<ol> <li> <p>用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的"函数"(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。</p> ...
在写程序时发现在判断文件是否存在时,有两种写法,有的人用了is_file,有的人用了file_exists,用哪个更好或者说更合适呢?判断文件存在用is_file还是file_exists?在写程序时发现在判断文件是否存在时,有两种写法,有的人用了is_file,有的人用了file_exists,用哪个更好或者说更合适呢? 看了这篇PHP中file_exists与is_fil...
<p>MYSQL的事务处理主要有两种方法。</p> <p>1、用begin,rollback,commit来实现</p> <p>begin 开始一个事务<br /> rollback 事务回滚<br /> commit 事务确认</p> <p>2、直接用set来改变mys...