最近的文章列表

如何通过(nginx+php)修改配置来解决php文件上传大小限制问题
max_execution_time = 300max_input_time = 600

前面已经介绍过apache+php下如何解决php文件上传大小限制问题。那么对于nginx+php网站,与apache+php下如何解决php文件上传大小限制问题不同的就是nginx本身的限制,限制了客户端上传文件的大小,这里以nginx为例说明nginx+php下如何解决这个问题。

1.nginx配置项修改

   修改/usr/local/nginx/conf/nginx.conf 文件,查找 client_max_b

2016/1/21 Comments:
分享实现php简单的MVC框架实例代码

在开始之前需要知道的知识

1.php基础知识

2.单一入口, 不知道的可以看看这里 (http://camnpr.com/php-python/2234.html)

具备以上两点, 那我们就可以开始啦. 哈哈!

先来说一下程序的执行流程

首先有个入口文件, 然后初始化一些程序, 之后根据请求调用不同的类和方法

首先我们弄一个入口文件 Index.php 来看看代码

<?php
require "Init.php";
2016/1/20 Comments:
分析php实现的单一入口应用程序实例(FleaPHP、CakePHP、symfony、Mojavi、Phing)

什么是单一入口应用程序?

在解释什么是单一入口应用程序之前,我们先来看看传统的 web 应用程序。
news.php 显示新闻列表
news_edit.php 显示新闻编辑页面
这两个页面不但分别实现了两个功能,还成为了应用程序的两个入口。

那什么是入口啊?

打个比方,大家上 WC,都是男生进一个门,女生进一个门。这两个门就是 WC 的两个入口。

呵呵,上面的例子应该很好理解吧。那稍微变换一下,单一入口的概念就很容易理解了。
现在我们是进一个公共 WC,不管男女都是从最外面的入口进入,交了钱以后才分别进两个门。那最外面的入口就是这个 WC 的单一入口。

2016/1/19 Comments:
分享mac/windows电脑下PHPStrom中实用的功能和快捷键大全

有哪些快捷键或者PHPStrom出的特有的功能,让你觉得编写过程变得很舒服和快捷?

CTRL + j 能够快捷的输入常用的代码片段,类似vim的 snipMate,可以加入自定义代码片段

find every thing phpstorm 支持类名、文件名等的单独搜索,我常用的是直接全部搜索。find every thing 需要自定义快捷键

很精确的函数、类名、变量等的定位,支持命名空间。不得不承认做的的确很好,比vim + ctag好太多了

alt + F7 find usages 功能,可以很方便的找到函数在哪里调用了

shift + F6 重命名 可以很方便的重命名方法和变量名等等。甚至文件的重

2016/1/18 Comments:
完美结合ThinkPHP+uploadify+upload+PHPExcel实现无刷新导入数据

直接给大家贴代码了,代码附有注释,相信大家都能看懂的,有不明白的地方欢迎给我留言。

前端HTML+JQuery  备注Jquery需要1.x版本,不能用2.x版本

1.引入必要文件及上传input

 <load file="__PUBLIC__/js/jquery-1.11.3.min.js" />
<load file="__PUBLIC__/uploadify/jquery.uploadify.min.js" />
<load file="__PUBLIC__/uploadify/uploadify.css" />
2016/1/15 Comments:
解决php设置页面超时时间方法(set_time_limit,max_execution_time,ini_set)

有时候我的页面因为网络卡,会一直转,我想是不是可以给页面设置一个超时时间,多久没反应就提示超时

比如php里的set_time_limit(300)

我想不是php页面也有个超时机制

------解决思路----------------------

php 里不就是set_time_limit() 吗,你还可以设置php.ini中的max_execution_time来改变全局超时时间。

------解决思路----------------------

max_execution_time

------解决思路----------------------

 

2016/1/14 Comments:
【实用】PHP判断字符串长度的两种方法(strlen,isset)

php程序中字符串长度判断,可以使用strlen。

方法一:

$str = ‘aaaaaa';if(strlen($str) > 6){ echo "字符串大于6";}

方法二:

if(isset($str{6}){}

以上两种方法,第二种效率更高些。

在PHP中,所有的变量都是用一个结构-zval来保存的,strlen虽然是直接获取其中的len,但是仍然有一次函数调用,而isset是PHP的语法结构,所以更快!所

2016/1/13 Comments:
如何实现PHP关键词替换的类(避免重复替换,保留与还原原始链接)

php关键词替换的类(避免重复替换,保留与还原原始链接)

本节主要内容:

一个关键词替换的类

主要可以用于关键词过滤,或关键词查找替换方面。

实现过程分析:

关键词替换,其实就是一个str_replace()的过程,如果是单纯的str_replace面对10W的关键词,1W字的文章也只需要2秒左右。

问题所在:

关键词替换了不只一次,比如a需要替换成<a>a</a>,但结果可能是<a><a>a</a></a>等这样。

为此,需要一个方法保护好已经替换了的标签,那么在处理文章之前,就先把

2016/1/12 Comments:
PHP通过哈希算法来实现搜索相似图片

哈希算法

count < =5 匹配最相似
count > 10 两张不同的图片
var_dump(ImageHash::run(‘./1.png', ‘./camnpr.jpg'));

<?php
class ImageHash {
const FILE_NOT_FOUND = '-1';
const FILE_EXTNAME_ILLEGAL = '-2';
private function __construct() {}
public static function run($src1, $src2) {
2016/1/11 Comments:
刷票:通过HTTP_X_FORWARDED_FOR、HTTP_CLIENT_IP、REMOTE_ADDR来看获得客户端IP的方法

刷票,分为多种限制,注册用户,验证码,以及IP限制。这个刷票网站,而不,是这个投票网站,限制了IP。如果要突破限制,我们需要了解如何获得用户的IP。

getenv('HTTP_X_FORWARDED_FOR')
getenv('HTTP_CLIENT_IP')
getenv('REMOTE_ADDR')

 

HTTP_X_FORWARDED_FOR

2016/1/8 Comments: