Php
文章平均质量分 74
mdj280759843
这个作者很懒,什么都没留下…
展开
-
深入理解PHP内存管理之谁动了我的内存
首先让我们看一个问题: 如下代码的输出,var_dump(memory_get_usage());$a = "laruence";var_dump(memory_get_usage());unset($a);var_dump(memory_get_usage()); 输出(在我的个人电脑上, 可能会因为系统,PHP版本,载入的扩展不同而不同): int(9...原创 2011-04-12 21:57:07 · 154 阅读 · 0 评论 -
php在图片下增加矩形框并加入水印
<? //统计混合汉字英文字符的实际字符数,只对gb2312码有效 function str_len($str){ $length=0; for($i=0;$i<strlen($str);$i++){ if(ord($str[$i])>0x80) $i++; $length++; } return $length; } //待添加水印图...原创 2011-04-02 21:57:19 · 301 阅读 · 0 评论 -
PHP会话(Session)使用入门
<?php // 设置一个存放目录 $savePath = './session_save_dir/'; // 保存一天 $lifeTime = 24 * 3600; session_save_path($savePath); session_set_cookie_params($lifeTime); session_start(); $_SESSION['admin'] = true; ?...转载 2011-04-02 21:51:28 · 98 阅读 · 0 评论 -
Thinkphp
一、什么是ThinkPHP ThinkPHP 是一个快速、兼容而且简单的轻量级国产PHP开发框架,诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,遵循Apache2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和Ac...原创 2011-04-02 21:39:19 · 565 阅读 · 0 评论 -
Thinkphp开发时关闭缓存的方法
因在开发中需要经常修改,从而要经常删除缓存,才能看到效果。所以为了开发的方便,可以把缓存给去除。1.找到\ThinkPHP\Common\convention.php和\ThinkPHP\Common\debug.php2.打开这两个文件找到你想要的设置即可。debug.php中'TMPL_CACHE_ON'=>false, // 默认开启模板缓存 co...原创 2011-04-02 21:37:37 · 291 阅读 · 0 评论 -
nginx rewrite 的 参数大全
正则表达式匹配,其中:* ~ 为区分大小写匹配* ~* 为不区分大小写匹配* !~和!~*分别为区分大小写不匹配及不区分大小写不匹配文件及目录匹配,其中:* -f和!-f用来判断是否存在文件* -d和!-d用来判断是否存在目录* -e和!-e用来判断是否存在文件或目录* -x和!-x用来判断文件是否可执行flag标记有:* last 相当于Apache里的[L]...原创 2011-04-02 20:25:09 · 98 阅读 · 0 评论 -
使用 Nginx 提升网站访问速度
Nginx 简介Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。 Igor 将源代码以类 BSD 许可证的形式发布。尽管还是测试版,但是,Nginx 已经因为它的稳定性、丰富...原创 2011-04-02 20:09:57 · 231 阅读 · 0 评论 -
nginx“虚拟目录”不支持php的解决办法
这几天在配置Nginx,PHP用FastCGI,想装一个phpMyAdmin管理数据库,phpMyAdmin不想放在网站根目录下,这样不容易和网站应用混在一起,这样phpMyAdmin的目录就放在别处,在Apache里,有alias,比较方便,在Nginx下没有虚拟目录概念的,是用location配合alias使用,我先试了简单的配置方式location /web/ {alias /da...原创 2011-04-01 19:03:07 · 138 阅读 · 0 评论 -
nginx资源定向 css js路径问题
今天玩玩项目,学学nginx发现还不错,速度还可以,但是CSS JS确无法使用,原来Iginx配置时需要对不同类型的文件配置规则,真是很郁闷,不过想想也还是很有道理。闲暇之际,把配置贴上来。#user nobody;worker_processes 1;error_log logs/error.log;pid logs/nginx.pid;events { worker_...原创 2011-04-01 10:09:54 · 996 阅读 · 0 评论 -
配置Nginx支持ThinkPHP的URL重写和PATHINFO
ThinkPHP支持通过PATHINFO和URL rewrite的方式来提供友好的URL,只需要在配置文件中设置 'URL_MODEL' => 2 即可。在Apache下只需要开启mod_rewrite模块就可以正常访问了,但是Nginx中默认是不支持PATHINFO的,所以我们需要修改nginx.conf文件。网上搜了很多方法都不奏效,研究了一天,发现通过以下的配置可以完美支持 'URL_...原创 2011-04-01 10:05:17 · 540 阅读 · 0 评论 -
xajax
什么是xajax? Xajax是一个开源的 PHP 类库 它能够让你黏合HTML、CSS、JavaScript和PHP,轻而易举的开发功能强大、基于WEB的AJAX应用软件. 使用xajax开发的应用软件,无需重新调入页面,就能够异步调用服务器端的PHP函数和更新内容. AJAX框架---XAJAX初试(非异步调用)(原创)1、非异步调用(即PHP处理在同一网页内)步骤:...原创 2011-03-30 20:42:48 · 214 阅读 · 0 评论 -
UTF-8下面截取中文字符。
<?php//支持中文的substr(string,length[,start])//“反斜杠”被博客系统过滤了,请在每个 x 前面添加“反斜杠”function cnsubstr($l1,$l2,$l3=0){ $I2 = "/[x01-x7f]|[xc2-xdf][x80-xbf]|xe0[xa0-xbf][x80-xbf]|[xe1-xef][x80-xbf][x...原创 2011-03-30 20:27:38 · 187 阅读 · 0 评论 -
php异步调用
浏览器和服务器之间是通过 HTTP 协议进行连接通讯的。这是一种基于请求和响应模型的协议。浏览器通过 URL 向服务器发起请求,Web 服务器接收到请求,执行一段程序,然后做出响应,发送相应的html代码给客户端。这就有了一个问题,Web 服务器执行一段程序,可能几毫秒就完成,也可能几分钟都完不成。如果程序执行缓慢,用户可能没有耐心等下去,就关闭浏览器了。而有的时候,我们更本不关心这些耗时...原创 2011-03-30 20:01:02 · 60 阅读 · 0 评论 -
支付宝php接口
支付宝(中国)网络技术有限公司是国内领先的独立第三方支付平台,由阿里巴巴集团创办。支付宝致力于为中国电子商务提供“简单、安全、快速”的在线支付解决方案。 支付宝公司从2004年建立开始,始终以“信任”作为产品和服务的核心。不仅从产品上确保用户在线支付的安全,同时让用户通过支付宝在网络间建立起相互的信任,为建立纯净的互联网环境迈出了非常有意义的一步。 支付宝提出的建立信任,化繁为...原创 2011-03-30 16:30:37 · 127 阅读 · 0 评论 -
Windows下Nginx+PHP5的安装与配置方法
安装 PHP5首先,从 http://www.php.net/downloads.php 下 载最新的 PHP5.2.9-2 Windows 版本,解压至 C:\php,把压缩包中的 php.ini-recommended,更名为 php.ini,然后打开修改几个选项:error_reporting = E_ALLdisplay_errors = Onextension_dir = "C:\p...原创 2011-03-29 10:33:22 · 126 阅读 · 0 评论 -
PHP通用分页类page.php[仿google分页]
<?php /** ** 通用php分页类。(仿Google样式) ** 只需提供记录总数与每页显示数两个参数。(已附详细使用说明..) ** 无需指定URL,链接由程序生成。方便用于检索结果分页。 ** 表单采用GET方法提交,可保证在诸如查询之,删除之类的操作时,不丢失URL参数 **/ class Pager{ //IE地址栏地址 var $...原创 2011-04-02 22:01:46 · 256 阅读 · 0 评论 -
nginx“虚拟目录”不支持php的解决办法
这几天在配置Nginx,PHP用FastCGI,想装一个phpMyAdmin管理数据库,phpMyAdmin不想放在网站根目录 下,这样不容易和网站应用混在一起,这样phpMyAdmin的目录就放在别处,在Apache里,有alias,比较方便,在Nginx下没有虚拟目录 概念的,是用location配合alias使用,我先试了简单的配置方式location /web/ {alias /data/...原创 2011-04-03 09:51:44 · 471 阅读 · 0 评论 -
android
Android是基于Linux内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统,早期由Google开发,后由开放手持设备联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写。2011年初数据显...原创 2011-04-04 09:09:23 · 732 阅读 · 0 评论 -
socket模拟post表单
post的本质就是发送给目的程序一个标志为post的协议串如下:01POST /目的程序 HTTP/1.1 02Accept: */* 03Referer: http://www.phpiask.com 04Accept-Language: zh-cn,en-us;q=0.5 05Cont...原创 2011-04-11 15:40:40 · 395 阅读 · 0 评论 -
OAUTH协议
OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。 OAUTH简介 OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。同时,任何第三方都可以使用OAUT...原创 2011-04-09 09:59:41 · 113 阅读 · 0 评论 -
nginx/windows: 让nginx以服务的方式运行
在windows下安装了nginx, 郁闷是发现它没有以服务方式运行, 也就是说当用户注销后,程序会终止.因此需要将nginx作为服务运行.假设nginx安装在c:\nginx\下:1.下载微软服务注册工具srvany.exe, instsrv.exe, 存放到c:\nginx\目录下点此下载2.安装NGINX服务, 将命令行切换到c:\nginx\,执行下列命令instsrv ...原创 2011-04-09 09:33:32 · 186 阅读 · 0 评论 -
ThinkPHP处理海量数据分表机制详细代码
应用ThinkPHP内置的分表算法处理百万级用户数据. 数据表: house_member_0 house_member_1 house_member_2 house_member_3 模型中 class MemberModel extends AdvModel { protected $partition = arr...原创 2011-04-07 18:27:40 · 508 阅读 · 0 评论 -
php 分库分表hash算法
//分库分表算法 function calc_hash_db($u, $s = 4) { $h = sprintf("%u", crc32($u)); $h1 = intval(fmod($h, $s)); return $h1; } for($i=1;$i<100;$i++) { echo calc_hash_db($i); echo "&l...原创 2011-04-07 18:16:04 · 316 阅读 · 0 评论 -
nginx配置文件实例: php (fastcgi), perl, proxy, rrd, nagios
nginx.confworker_processes 5;error_log logs/error.log;error_log logs/error.log info;events {use kqueue;worker_connections 2048;}http {include mime.types;default_type application/octet-stream;s...原创 2011-04-06 20:33:36 · 134 阅读 · 0 评论 -
Nginx location 指令的使用(中文翻译)
locationsyntax: location [=|~|~*|^~] /uri/ { … }语法:location [=|~|~*|^~] /uri/ { … }default: no默认:否context: server上下文:serverThis directive allows different configurations depending on the URI. ...原创 2011-04-06 20:31:48 · 169 阅读 · 0 评论 -
nginx重启脚本 (平滑重启nginx)
nginx是超级稳定的服务器,一般不会因为超载问题而需要重启,重启的目的一般都是修改配置文件后需要加载一下。最开始的时候,我是用最直接的重启方式killall -9 nginx;/data/nginx/sbin/nginx如果机器比较慢,kill进程时一瞬间杀不完,再执行一次即可。这种重启方式不是特别安全,如果配置有误,则会重启失败,需要重新修改配置文件然后再启动,期间会消耗一点时间。...原创 2011-04-06 20:27:54 · 108 阅读 · 0 评论 -
nginx学习之一Location,rewrite,防盗链,禁止访问
一、介绍Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.二、Location语法语法:location [=|~|~*|^~] /uri/ { … }注:1、~ 为区分大小写匹配2、~* 为不区分大小写匹配3、!~和!~*分别为区分大小写不匹配及不区分大...原创 2011-04-06 20:24:52 · 103 阅读 · 0 评论 -
php curl函数应用方法之模拟浏览器
curl 是使用URL语法的传送文件工具,支持FTP、FTPS、HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE和LDAP。curl 支持SSL证书、HTTP POST、HTTP PUT 、FTP 上传,kerberos、基于HTT格式的上传、代理、cookie、用户+口令证明、文件传送恢复、http代理通道和大量其他有用的技巧。详见参考手册 原来php默认并不进...原创 2011-04-06 09:53:37 · 123 阅读 · 0 评论 -
基于PHP的cURL快速入门2
用POST方法发送数据当发起GET请求时,数据可以通过“查询字串”(query string)传递给一个URL。例如,在google中搜索时,搜索关键即为URL的查询字串的一部分:http://www.google.com/search?q=nettuts这种情况下你可能并不需要cURL来模拟。把这个URL丢给“file_get_contents()”就能得到相同结果。 不过有一些HTML表...原创 2011-04-06 09:39:43 · 87 阅读 · 0 评论 -
基于PHP的cURL快速入门1
cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。最爽的是,PHP也支持 cURL 库。本文将介绍 cURL 的一些高级特性,以及在PHP中如何运用它。为什么要用 cURL?是的,我们可以通过其他办法获取网页内容。大多数时候,我因为想偷懒,都直接用简单的PHP函数:以下为引用的内容:$content = file_get_contents...原创 2011-04-06 09:36:30 · 101 阅读 · 0 评论 -
系统开发中的权限控制
简单点说就是运用运算实现,用“|”或 来实现权限添加,用“^”异或 实现权限删除,用“&”与 实现权限严重,如果为真则有权限<?phpdefine("PUBLIC_ARTICLE", 1); //发行文章 define("CREATE_ARTICLE", 2); //添加文章 define("MODIFY_ARTICLE", 4); //修改文章 define("...原创 2011-04-05 22:24:41 · 335 阅读 · 0 评论 -
甲骨文挥舞法律大棒 JavaEye改名ItEye
今天,也就是2011年4月1日愚人节,我们不得不在这样一个特殊含义的节日,向JavaEye会员宣布这样一个富有讽刺性和纪念意义的网站公告:由于Oracle公司通过授权的律师事务所,对JavaEye网站提出了我们无法接受的苛刻条件,在经过我们长期努力的交涉无效之后,Oracle授权的律师事务所以强硬的姿态要求我们服从,并且以停用iteye.com的域名作为威胁,因此,我们只能被迫放弃已经运营了7...原创 2011-04-04 19:36:27 · 107 阅读 · 0 评论 -
php编程规范
下载原创 2011-03-28 15:25:47 · 70 阅读 · 0 评论 -
php 定界符
PHP是一个Web编程语言,在编程过程中难免会遇到用echo来输出大段的html和javascript脚本的情况,如果用传统的输出方法 ——按字符串输出的话,肯定要有大量的转义符来对字符串中的引号等特殊字符进行转义,以免出现语法错误。如果是一两处还可以容忍,但是要是一个完整的 html文本或者是一个200行的js我想是谁都会崩溃的。这就是PHP为什么要引入一个定界符的原因——至少一大部分原因是这样...原创 2011-03-28 15:15:29 · 140 阅读 · 0 评论 -
YAML
YAML 来自YAML官方网站 (http://www.yaml.org/) 的定义: YAML是一种直观的能够被电脑识别的的数据数据序列化格式,他并且容易被人类阅读,容易和脚本语言交互的。换种说法,YAML是一种很简单的类似于XML的数据描述语言,语法比XML简单很多。他在描述能够被转化成数组或hash的数据是很有用,例如: house: family: ...原创 2011-03-23 16:58:25 · 82 阅读 · 0 评论 -
mantis
mantis 缺陷管理平台Mantis,也做MantisBT,全称Mantis Bug Tracker Mantis是一个基于PHP技术的轻量级的开源缺陷跟踪系统,以Web操作的形式提供项目管理及缺陷跟踪服务。在功能上、实用性上足以满足中小型项目的管理及跟踪。更重要的是其开源,不需要负担任何费用。Manti Mantis是一个缺陷跟踪系统具有多特性包括:易于安装,易于操作,基...原创 2011-05-25 09:50:49 · 229 阅读 · 0 评论 -
discuz模板类
Template.class.php Discuz 模板引擎<?php/** * 模板类 - 使用 Discuz 模板引擎解析 * * @package classes * @copyright Copyright (c) 2007-2008 (http://www.tblog.com.cn) * @author Akon(番茄红了) <aulto...原创 2010-11-03 16:03:28 · 196 阅读 · 0 评论 -
XingTemplate.php 自定义标签
<?phpclass xingTemplate{ // 引擎选项 private $arrayConfig = array(); /* 模板编译信息提示 默认中文 ( 如果特定语言包存在,将自动读取 ) */ public $xingTemplate_Class_Lang = array( ' 模板文件不存在或...原创 2010-11-02 03:36:39 · 140 阅读 · 0 评论 -
phpnew模板引擎类
<?php/*# @category: 分享工作室;# @copyright: 分享在线传媒公社;# @var; PHPnew.class ;# @version: PHPnew 7.0 Professional;*///模板引擎解析类;class PHPnew { const PHP = 5; //PHP限制版本; public $te...原创 2010-11-01 19:49:17 · 201 阅读 · 0 评论 -
ezmvc框架 软件架构 自己写mvc
Index.php 小孟在线<?php ########################################################################################### # EzMvc http://hi.baidu.com/mak0000 # 小孟在线 Mengdejun # 20100920 ...原创 2010-10-27 19:22:13 · 145 阅读 · 0 评论