![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
php程序开发
文章平均质量分 70
u012275531
这个作者很懒,什么都没留下…
展开
-
带你横向比较10款PHP开发框架
引子PHP开发框架近来在PHP社区中成为讨论的热点,几乎每天都在推出新的框架。面对市面上超过四十种的开发框架,你很难判断究竟哪一款最适合你,尤其是在这些框架所提供的功能不尽相同的时候。本文将引导你遍览十款最热门最流行的开发框架,并对它们作出横向比对。我会先列出一张所有框架的一览表,而后我们将对它们逐个简述。概览以下你看到是这十款开发框架的一览表,列举了他们各自所提供的功能。Fr原创 2013-10-08 13:39:58 · 1072 阅读 · 0 评论 -
【代码】PHP 生成静态页面的方法
在PHP网站开发中为了网站推广和SEO等需要,需要对网站进行全站或局部静态化处理,PHP生成静态HTML页面有多种方法,比如利用PHP模板、缓存等实现页面静态化,今天就以PHP实例教程形式讨论PHP生成静态页面的方法。页面静态化的方法,分为两种,一种是伪静态,就是url 重写,一种是你真的静态化。下面介绍PHP中页面静态化的方法。什么是PHP静态化PHP静态化的简单理解就是使网站生成页面以原创 2013-10-08 13:20:57 · 1031 阅读 · 0 评论 -
【代码】PHP 如何实现异步操作的研究
1.为啥PHP需要异步操作?一般来说PHP适用的场合是web页面展示等耗时比较短的任务,如果对于比较花时间的操作如resize图片、大数据导入、批量发送EDM、SMS等,就很容易出现操作超时情况。你可以说我可以设置无限超时时间,等等你也要知道PHP有一个工作模式是fastcgi,PHP无限不超时,不代表 fastcgi相应不超时……如果你还想说要fastcgi相应永不超时,我建议你应该跟你们的原创 2013-10-09 11:31:04 · 794 阅读 · 0 评论 -
【代码】php过滤提交数据 防止sql注入攻击
规则 1:绝不要信任外部数据或输入关于 Web 应用程序安全性,必须认识到的第一件事是不应该信任外部数据。外部数据(outside data) 包括不是由程序员在 PHP 代码中直接输入的任何数据。在采取措施确保安全之前,来自任何其他来源(比如 GET 变量、表单 POST、数据库、配置文件、会话变量或 cookie)的任何数据都是不可信任的。例如,下面的数据元素可以被认为是安全的,因为它原创 2013-10-09 11:36:26 · 892 阅读 · 0 评论 -
【代码】获取https里面内容的方法和技巧使用php
直接用file_get_contents,会报错;程序代码$url = (https://zhangshiju.com");file_get_contents($url);错误:程序代码Warning: file_get_contents(https://xxx.com) [function.file-get-contents]: failed to open原创 2013-10-10 11:15:24 · 2029 阅读 · 0 评论 -
【代码】利用php防止用户伪造跨站请求的小技巧
清源教育php开发课程学习培训之php常用的伪造跨站请求介绍伪造跨站请求比较难以防范,而且危险系数很大,恶意攻击者经常通过这种方式进行恶作剧,发spam信息,删除网站数据等等。这种常见的攻击表现形式有:伪造恶意的链接,诱骗用户去点击,或者让用户在毫无防备的情况下访问伪造提交表单,诱骗用户提交。表单是隐藏类型的,用图片或链接的形式伪装。比较常见并且最常用的防范手段是在原创 2013-10-10 11:21:09 · 1701 阅读 · 0 评论 -
PHP 对特殊字符进行安全过滤的方法与代码示例
<? function CheckHacks($checkinfo,$action){ //action 0 直接退出并提示,1只替换掉危险词 $badwords=array("","'","&"); for ($i=0;$i<count($badwords);原创 2013-10-11 10:42:40 · 1086 阅读 · 0 评论 -
PHP 导入CSV格式数据,程序包含了跳过第一行表头方法
<?include_once("inc/conn.php");//数据库连接语句$line_number = 0;$handle = fopen("test.csv","r");while ($data = fgetcsv ($handle,100000,",")) { //循环表的所有行 if($line_number == 0){ //跳过表头原创 2013-10-11 11:00:48 · 4979 阅读 · 0 评论 -
【代码】PHP 脚本的技巧之动态创建图象
动态创建图象在安装了某些第三方函数库之后,结合你的图形处理技能,你就可以用PHP创建和处理图像了。事实上,你也不需要太高的几何学知识。我在中学的时候这门功课总是不及格,现在不也照样会用PHP创建图像!在使用基本的图像创建函数之前,你需要安装GD库。如果要用到和JPEG相关的图像创建函数你还需要安装jpeg-6b。在图像中使用Type 1字体的时候还必须安装t1lib。 在这原创 2013-10-12 11:08:49 · 624 阅读 · 0 评论 -
【代码】PHP 字符串编码转换
/** * 对数据进行编码转换 * @param array/string $data 数组 * @param string $output 转换后的编码 */ function array_iconv($data,$output = 'utf-8') { $encode_arr = array('UTF-8','ASCII','GBK',原创 2013-09-28 11:39:24 · 688 阅读 · 0 评论 -
PHP网站设计的问题的全面阐述
网站提示:php让人难堪。它是如此的破碎,但那些被培训的业余爱好者,却对它称赞不已。php在做一些徽不足道的挽回措施,但我选择忘记它。前言我的脾气古怪。我会抱怨很多东西。这个星球上大多数技术我都不喜欢。PHP不仅使用起来尴尬,还有要嘛我想要的不适合,要嘛不是最令人满意,要嘛违背我的信仰。我可以告诉你关于一门语言,所有我想避免的好方式,所有我喜欢的坏方式。来吧,问吧!谈话会很有趣!p原创 2013-10-12 11:17:08 · 1086 阅读 · 0 评论 -
【代码】PHP中__get()和__set的两种用法
php面向对象_get(),_set()的用法一般来说,总是把类的属性定义为private,这更符合现实的逻辑。但是,对属性的读取和赋值操作是非常频繁的,因此在PHP5中,预定义了两个函数“__get()”和“__set()”来获取和赋值其属性。类似于java中的javabean的操作,使用的方法也类似,只是不需要像javabean中那样,对每个字段进行set和get的操作。只需要加上两个原创 2013-09-28 11:53:16 · 1293 阅读 · 0 评论 -
PHP 常用函数总结分享
清源教育php开发课程学习培训之PHP常用函数总结分享为您总结分享PHP常用的数组、字符串、时间、文件操作函数,希望对学习PHP开发的朋友有所帮助。数组:【重点1】implode(分隔,arr) 把数组值数据按指定字符连接起来例如:$arr=array('1','2','3','4');$str=implode('-',$arr);explode([分隔],ar原创 2013-09-28 11:45:51 · 781 阅读 · 0 评论 -
【代码】用div+css实现 在新窗口中打开指定的DIV标签下链接
平时都遇到过,在发贴回复的时候,有用户自行添加他们网站链接,以增加外链,但有时候文章编辑器不能保证他们留下的链接都在新窗口中打开,如果在原窗口中打开,就会使用户离开我们的网站,这不是我们愿意看到的,那如何限制在一个网页中的某一块下实现,所有链接都从新窗口中打开,而同一页面下的其它链接又不受影响呢?下面的如果不限制,应该是从原窗口直接打开,用户便会离开我们的页面原窗口中打开原创 2013-10-14 11:09:30 · 4606 阅读 · 0 评论 -
linux CentOS 系统下如何将php和mysql命令加入到环境变量中
linux CentOS系统下如何将php和mysql命令加入到环境变量中在Linux CentOS系统上 安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到环境变量之前,执行“php -v”命令查看当前php版本信息时时,则会提示命令不存在的错误,下面我们详细介绍一下在linux下将php和mysql加入到环境变量中的方法(假 设php和m原创 2013-10-14 11:17:35 · 2274 阅读 · 0 评论 -
教大家如何设计实现自己的PHP短网址服务
PHP短网址服务设计分三个过程,搞明白了就可以自己设计实现它。1.根据原始网址生成短网址这个有现成的算法可以用,该算法的原则:同一个网址生成的短网址应相同,而不是随机生成。PHP版的短网址生成函数:function code62($x) {$show = '';while($x > 0) {$s = $x % 62;if ($s > 35) {$s = chr原创 2013-10-15 11:33:04 · 3108 阅读 · 0 评论 -
PHP 分页类
下面是我自己的分页类,可适当的修改 <?php /** * @name Pager's class * @author Refer * @copyright www.phpcq.com * @version Alpha 1.0 * @todo 下拉菜单分页---From表单传值...可以根据自己的情况(采用GET传值) * */ class Pager{原创 2013-10-15 11:22:32 · 772 阅读 · 0 评论 -
【代码】thinkphp 框架 中 ajax 的应用
在thinkphp中,内置了ajax的方法,即: ajaxReturn("data","info","status");data:传递的数据,info:显示的信息,status:状态php代码:$data['name'] = "lina";$data['age'] = '20';$this->ajaxReturn( $data, '用户的详细信息 ',1 );ht原创 2013-10-17 11:02:35 · 1037 阅读 · 0 评论 -
php 输出变量加大括号{}的作用
php输出变量加大括号,这是什么写法?看下面一段代码:<?phpheader("Content-Type:text/html; charset=utf-8");$test="1变量1";//echo "前面有字符串aa ".$test." bb后面字符串";echo "前面有字符串aa {$test} bb后面字符串";?>可以看出php输出变量加大括号同使用.运算符输出变量原创 2013-10-17 11:11:16 · 1902 阅读 · 0 评论 -
PHP 中实现Timer功能使用pcntl和libevent
[php] <?php function newChild($func_name) { echo "enter newChild\n"; $args = func_get_args(); unset($args[0]); $pid = pcntl_fork(); if ($pid == 0) { fu原创 2013-10-18 12:14:29 · 1303 阅读 · 0 评论 -
提高PHP编程效率的49个关键点,缓存机制引入提升性能
1.用单引号代替双引号来包含字符串,这样做会更快一些。因为会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“”(译注:PHP手册中说echo是结构,不是真正的函数,故把函数加上了双引号)。2.如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。3.$row[’id’] 的速度是$row[id]的原创 2013-10-24 12:00:11 · 893 阅读 · 0 评论 -
PHP中查找文件的相对路径或者绝对路径的工具
以前面试题目中有一题为求两个文件的相对路径,当时觉得没有电脑,书写代码太麻烦,没有做那个题目,今日工作比较闲遐,就想起这事来,完成了两个函数,代码未经过实际生产环境考验,如引用至生产环境,还请慎重阅读,主要是参考学习查看源代码打印帮助1<?php2/**3 * 文件的相对路径或者绝对路径查找工具4 *5 * @author 清源教育6 * @version $Id:v原创 2013-10-24 12:05:56 · 1213 阅读 · 0 评论 -
php 数组的小函数之想
最近项目需要对数组有这么一个要求,数组本身的内容可能会不断改变,如果知道数组的某个键名,如何获取下一个键名?刚开始的时候以为会不好写,就不断书上找数组的相关函数,又去网上搜索,发现都没有。于是自己动手写写,没想到如此简单就写好了。[html] /* * 求数组当前键名的下一个键名 * $array 数组 * $keys 当前的键名 * 返回下原创 2013-10-18 12:09:49 · 579 阅读 · 0 评论 -
【代码】php 中文字符串首字母函数的获取
function chineseFirst($str){$str= iconv("UTF-8","gb2312", $str);//如果程序是gbk的,此行就要注释掉//判断字符串是否全都是中文 (PS:^_^不错的php学习交流群:276167802,验证:csl,有兴趣的话可以加入进来一起讨论)if (preg_match("/^[\x7f-\xff]/", $str)原创 2013-10-25 11:06:51 · 1167 阅读 · 0 评论 -
介绍两种方法来实现不用开浏览器就能运行php代码的方法
notepad++文本编辑器个人感觉很好用 。而且支持的语言也很多。当运行一个很小的脚本编辑器的时候,有时候就不喜欢打开浏览器查看结果,不仅占内存而且还慢。下面我就介绍两种方法来实现不用开浏览器就能运行php代码,得到结果。第一种:1、点击notepad++ “运行(R)->运行”[或者直接F5];2、在里面输入cmd /k D:\wamp\php\php.exe “$(FUL原创 2013-10-25 11:14:33 · 5414 阅读 · 1 评论 -
【代码】thinkphp视图模型查询失败提示:ERR: 1146:Table ‘db.pr_order_view’ doesn’t exist
想用thinkphp的视图模型进行关联查询,结果出现了这样儿的问题(log日志记录):ERR: 1146:Table 'db.pr_order_view' doesn't exist,我就纳闷儿,视图模型怎么出来的sql是这样儿的呢,视图模型如下: /** * 订单视图模型 order 连接 member 连接 product * * @version $Id: O原创 2013-10-21 11:15:57 · 2410 阅读 · 0 评论 -
php获取用户ip地理位置利用淘宝IP库
利用淘宝IP库获取用户ip地理位置我们查ip的时候都是利用ip138查询的,不过那个有时候是不准确的,还不如自己引用淘宝的ip库来查询,这样准确度还高一些。不多说了,介绍一下:淘宝IP地址库淘宝公布了他们的IP库http://ip.taobao.com/,还有REST API接口,不过每个用户的访问频率需小于10qps,访问方 式:http://ip.taob原创 2013-10-21 11:22:56 · 1408 阅读 · 0 评论 -
PHP SPL,被遗失的玉石
Rafael Dohms 的文章写的让我为之惊艳,忍不住就翻译了下来,同时在文章里面锦上添花了一下。SPL,PHP 标准库(Standard PHP Library) ,此从 PHP 5.0 起内置的组件和接口,并且从 PHP5.3 已逐渐的成熟。SPL 其实在所有的 PHP5 开发环境中被内置,同时无需任何设置。似乎众多的 PHP 开发人员基本没有使用它,甚至闻所未闻。究其原原创 2013-10-28 11:31:58 · 714 阅读 · 0 评论 -
PHP 找不到相应的头文件在扩展开发编译时
在扩展开发中往往我们自己开发的扩展会使用到现有一些开源扩展提供的库函数,需要引入相应的头文件,编译扩展时有可能会提示找不到相应的头文件,如:In file included from /Users/xudianyang/C/php-5.4.14/ext/firephp/firephp.c:1:./firephp.h:18:10: fatal error: ‘ext/reflection/p原创 2013-10-22 11:15:33 · 1573 阅读 · 0 评论 -
php 微信开发平台开发小试验
微信和随之微信产生的开放平台最近着实火了一下。一直想做个微信的平台试试,最近有了个好点子,想尽快把它实现出来,好在微信不需要什么UI等等的设计,只需要把逻辑展现出来即可了。其实微信公众平台如果只是作为一个发布信息的平台的话,也就是“编辑模式”下其实是无需敲代码的。只是在开发者模式下需要开发者去设计一定的逻辑和代码去实现特定的功能,接下来就说下开发的起步:1.开发微信公众平台首先原创 2013-10-28 11:46:20 · 1095 阅读 · 0 评论 -
【代码】php yaf和PEAR代码命名规范
最近看了看laruence的yaf,相信做PHP都知道yaf(Yet another framework),觉得很不错。作为第一个用C实现的PHP MVC框架,导致无数PHPer崇拜。将yaf的官方文档,通读了一遍,也动手实验了几把,感觉很不错,让人不得不佩服。虽然目前还没有将yaf运用到生产环境,但相信以后会用得上。官方文档:http://yaf.laruence.com/manual/原创 2013-10-22 11:25:39 · 1477 阅读 · 0 评论 -
PHP技术人员--面试总结PHP篇
1、实现中文字符串截取无乱码方法开启mbstring扩展,然后自定义函数:<?phpheader('content-Type:text/html:charset=utf-8');function substr_utf8($str, $start, $length = null) {return join("",array_slice(preg_split("//u", $st原创 2013-10-29 12:06:40 · 1757 阅读 · 0 评论 -
【代码】PHP 分页类
下面是我自己写的分页类,可做简单的修改[php]<?php/*** @name Pager's class* @author Refer* @copyright www.phpcq.com* @version Alpha 1.0* @todo 下拉菜单分页---From表单传值...可以根据自己的情况(采用GET传值)**/class Pager{/*** s原创 2013-10-23 11:56:48 · 960 阅读 · 0 评论 -
php session_start()出错原因分析及解决办法
本文是对php中session_start()的出错原因及解决方法进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助错误提示: Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent原因:在session原创 2013-10-29 11:53:20 · 4186 阅读 · 0 评论 -
php版本不同导致报错:Deprecated: Function eregi() is deprecated in
本地开发测试好好的,上线后报这个错误,查看相关资料,原来是php版本的问题,函数弃用了,那如何解决呢?解决方法:找到代码所在的文件 位置改前:eregi("zoneself.org", $agent)改后:preg_match("/zoneself.org/", $agent)本文出自 “清源教育” 博客,转载请注明此处,谢谢!更多有关php技术问题欢迎加群探讨:276原创 2013-10-23 12:08:06 · 1391 阅读 · 0 评论 -
【代码】PHP 文件上传实例
我们在注册网络应用账号之后,在填充个人资料的时候一般都会更换会员图像,在发邮件的时候加附件,将文件共享到QQ群空间或者网络硬盘等等,这些操作看似就是把东西上传一下,然后显示出来,那么简单。所有这些操作都涉及到一个技术,那就是文件上传。在PHP中,有一些内置的文件操作函数,然后再加上一自定义的函数,就可以很清楚的实现文件上传这一操作,今天我就以一个案例的形式来说一说PHP文件上传的实现过程。原创 2013-10-30 11:09:33 · 908 阅读 · 0 评论 -
wordpress文章ID不连续显示问题的完美解决
在最新版的 wordpress 系统中,依然存在着文章ID不连续显示的问题,也就是我们还没有上传多少文章,在数据库里的ID号已经很大了,也就是说如果我们的博客使用的是固定链接,那么在前台显示的ID相差会很大,比如第一篇文章是ID=2,那么第二篇可能就是ID=5或者ID=8了,这就是wordpress文章ID不连续显示的问题了。其实这个也不能单纯的定义成wordpress的bug,毕竟人原创 2013-10-30 11:21:57 · 2404 阅读 · 0 评论 -
【项目部署】thinkPHP
注:所用ThinkPHP版本 ThinkPHP3.1.2_Core【项目部署】一,把ThinkPHP包放入到项目根目录下二,1) 新建前台应用项目目录入口文件 index.php2) 新建后台管理项目目录入口文件 admin.php目录结构如图一:Index.php文件代码:<?php//定义[前台应用]项目原创 2013-10-31 11:48:02 · 1253 阅读 · 0 评论 -
php 数组常量的定义
大家看看下面的代码有没有什么问题,可以用吗?<?phpdefine('BEST_PHPER',array('name'=>'巩文','address'=>'china'));My God,明确告诉你不可以;原因是Warning: Constants may only evaluate to scalar values。也就是说define常量的值;仅允许标量和 nul原创 2013-10-31 11:34:39 · 2968 阅读 · 0 评论 -
PHP 中文字符串截取无乱码的方法以及php汉字截取函数_preg_split()
昨天,在写代码时我遇到了一个中文字符串截取的问题,原本是想直接用substr()来,但这个是在单字节符下用的,对于多字节编码的汉字或是其它语言字符中,这个函数可能就用不上了,而且会容易截出乱码来!现在就把我的下工作记录和总结给大家分享一下:问题产生及使用案例网站:天气预报15天查询(http://tqybw.net)问题时间:2013-10-31解决思路:把汉字原创 2013-11-01 11:16:20 · 3845 阅读 · 0 评论