
PHP
文章平均质量分 90
PHPService
这个作者很懒,什么都没留下…
展开
-
PHP正则表达式模式修正符
<br />i (PCRE_CASELESS) 如果设定此修正符,模式中的字符将同时匹配大小写字母。 <br /><br />m (PCRE_MULTILINE) 默 认情况下,PCRE 将目标字符串作为单一的一“行”字符所组成的(甚至其中包含有换行符也是如此)。“行起始”元字符(^)仅仅匹配字符串的起始,“行 结束”元字符($)仅仅匹配字符串的结束,或者最后一个字符是换行符时其前面(除非设定了 D 修正符)。这和 Perl 是一样的。 当设定了此修正符,“行起始”和“行结束”除了匹配整个字符串开头和结原创 2010-10-22 16:45:00 · 656 阅读 · 0 评论 -
php soap 使用
PHP 使用soap有两种方式。一、用wsdl文件服务器端。phpclass service{ public function HelloWorld() { return "Hello"; } public function Add($a,$b) { return $a+$b; }}$server=new SoapSe转载 2015-02-04 19:06:10 · 588 阅读 · 0 评论 -
php使用memcache存储session
web服务器的php session都给memcached ,这样你不管分发器把 ip连接分给哪个web服务器都不会有问题了,配置方法很简单,就在php的配置文件内增加一条语句就可以了,不过前提你需要装好memcache模块1.设置session用memcache来存储方法I: 在 php.ini 中全局设置session.save_handler = memcache转载 2015-06-19 00:27:12 · 820 阅读 · 0 评论 -
如何设置一个严格30分钟过期的Session
第一种回答那么, 最常见的一种回答是: 设置Session的过期时间, 也就是session.gc_maxlifetime, 这种回答是不正确的, 原因如下:1. 首先, 这个PHP是用一定的概率来运行session的gc的, 也就是session.gc_probability和session.gc_divisor(介绍参看 深入理解PHP原理之Session Gc的一个小概率No转载 2015-06-18 16:52:38 · 496 阅读 · 0 评论 -
彻底明白php的session机制
1.session.save_handler = files * 1 . session_start () 1) . session_start ()是session机制的开始,它有一定概率开启垃圾回收 , 因为session是存放在文件中,PHP自身的垃圾回收是无效的,SESSION的回收是要删文件的,这个概率是根据php . ini的配置决定的转载 2015-06-23 15:11:03 · 7200 阅读 · 0 评论 -
PHP里session有效时间和回收机制
修改php中的session过期时间可以修改php配置文件php.ini中的session.gc_maxlifetime即可。当php每发出一次请求时,会有1/100的概率(默认值)触发"session回收"。如果"session回收"发生,那就会检查/tmp/sess_*的文件,如果最后的修改时间到现在超过了1440秒(gc_maxlifetime的值),就将其删除,意味着这些sessi转载 2015-06-23 15:13:12 · 765 阅读 · 0 评论 -
详细说明phpmyadmin连接,管理多个mysql服务器
1,将phpMyAdmin根目录下的config.sample.inc.php,重命名为config.inc.php2,修改config.inc.php文件/* * First server */ //如果要管理,更多个mysql服务器,就修改$connect_hosts这个数组就行了 $connect_hosts = array( '1'=>array(转载 2015-06-03 17:45:45 · 619 阅读 · 0 评论 -
PHP中使用参数化查询
PHP 中提供了三种访问 MySQL 数据库的扩展,即 mysql,mysqli 和 PDO。它们的区别可以比较如下:扩展mysqlmysqliPDOPHP 版本2.0+5.0+5.1+生命周期废弃活跃活跃面向对象语法否是是过程式语法是是否服务器端预处理语句否转载 2015-08-26 16:43:46 · 6827 阅读 · 0 评论 -
php面向对象编程之构造方法 __construct()
void __construct ([ mixed $args [, $... ]] )PHP 5 允行开发者在一个类中定义一个方法作为构造函数。具有构造函数的类会在每次创建新对象时先调用此方法,所以非常适合在使用对象之前做一些初始化工作。<?php class Person{转载 2015-09-18 15:50:24 · 4593 阅读 · 0 评论 -
WampServer 2.5 如何实现局域网访问?
在 httpd-vhosts.conf 做好域名配置后,需要在 httpd.conf 里做如下设置: AllowOverride none order deny,allow allow from all AllowOverride none order deny,allow allow from all转载 2015-10-25 15:55:52 · 4014 阅读 · 0 评论 -
PHP参数传递之引用传递及错误Fatal error: Call-time pass-by-reference has been removed解决办法
在使用PHP按引用传递时,可能会出现下面这样的错误:Fatal error: Call-time pass-by-reference has been removed in /Users/admin/Sites/HelloPHP/classes/DBConn.php on line 17出现这样的错误是因为错误的引用传递导致的。先看看别人提供的解决办法:一、php.ini配转载 2015-11-25 21:51:56 · 8137 阅读 · 0 评论 -
php模块memcache和memcached区别分析
谈及php搭配memcached使用,已经是老生常谈的问题。但是有一些细节,不见得人人清楚。比如说php的模块memcache和memcached有什么区别等。下面我就简单介绍一下。1.目前大多数php环境里使用的都是不带d的memcache版本,这个版本出的比较早,是一个原生版本,完全在php框架内开发的。与之对应的带d的memcached是建立在libmemcached的基础上,所以相转载 2016-01-06 17:16:44 · 414 阅读 · 0 评论 -
PHP 7.0 升级备注
PHP 7.0.0 beta1 发布了,在带来了引人注目的性能提升的同时,也带来了不少语言特性方面的改变。以下由 LCTT 翻译自对官方的升级备注,虽然目前还不是正式发布版,不过想必距离正式发布的特性已经差别不大了。(本文会持续追踪更新) 1. 向后不兼容的变化语言变化变量处理的变化间接变量、属性和方法引用现在以从左到右的语义进行解释。一些例子:$$foo['bar转载 2015-12-22 11:43:59 · 596 阅读 · 0 评论 -
PHP正则:正向/反向预搜索
预搜索是一个非获取匹配,不进行存储供以后使用。1、正向预搜索 "(?=xxxxx)","(?!xxxxx)""(?=xxxxx)”:所在缝隙的右侧,必须能够匹配上 xxxxx 这部分的表达式,$str = 'windows NT windows 2003 windows xp';preg_match('/windows (?=xp)/',$str,$res);转载 2016-03-04 17:25:14 · 2481 阅读 · 0 评论 -
PHP正则表达式
函数mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit])功能在 subject 中搜索 pattern 模式的匹配项并替换为 replacement。如果指定了 limit,则仅替换 limit 个匹配,如果省略 limit 或者其值为 -1,则所有的匹配项都会被替换。转载 2014-08-08 21:12:27 · 492 阅读 · 0 评论 -
PHP安全编码
验证过滤用户的输入即使是最普通的字母数字输入也可能是危险的,列举几个容易引起安全问题的字符:! $ ^ & * ( ) ~ [ ] \ | { } ' " ; ? - `在数据库中可能有特殊意义的字符:' " ; \还有一些非打印字符:字符\x00或者说ASCII 0,NULL或FALSE字符\x10和\x13,或者说ASCII 10和13转载 2016-04-28 22:02:01 · 811 阅读 · 0 评论 -
PHP中间件--ICE
ICE(Internet Communications Engine)是Zeroc提供的一款高性能的中间件。使用ICE能使得php(或c++,java,python)与java,c++,.net,python等进行交互。基于ICE可以实现电信级的解决方案。 1第一个问题:为什么要使用中间件?设想一个这样的场景:对于一个大型网站来说,往往有很多个web服务器,每个web服务器都存在很多对转载 2016-05-04 15:34:16 · 512 阅读 · 0 评论 -
timthumb.php源码详解
来自:http://my.oschina.net/whrlmc/blog/81739用过timthumb这个类的都应该很熟悉,此类可以用来生成图片的缩略图并加以处理,如果在linux环境下安装了optipng或pngcrush工具,也可以进行网站的截图操作。功能非常的强大,所以趁着假期花了两天时间把源码从头到尾很详细的注释了一遍。简单说一下此类的使用方法:访问地址为:http://转载 2016-06-13 21:21:01 · 2053 阅读 · 0 评论 -
PHP在linux上执行外部命令(整理)
目录:一、PHP中调用外部命令介绍二、关于安全问题三、关于超时问题四、关于PHP运行linux环境中命令出现的问题一、PHP中调用外部命令介绍在PHP中调用外部命令,可以用,1>调用专门函数、2>反引号、3>popen()函数打开进程,三种方法来实现: 方法一:用PHP提供的专门函数(四个):PHP提供4个专门的执行外部命令的函数:exec(), sys转载 2015-01-11 01:53:26 · 590 阅读 · 0 评论 -
Memcache知识点梳理
来源:http://369369.blog.51cto.com/319630/833234转载 2014-10-09 12:59:02 · 464 阅读 · 0 评论 -
如何设计一套较完善的网络投票系统
<br />那么怎样的投票系统能比较有效的杜绝人为作弊呢,作者认为应该从以下几个方面去考虑:<br />一、采取有效的IP限制,一个IP只能投一票。<br />目前网络上绝大部分的投票活动都是一个IP一天可以投一票,少数没有IP限制(采取客户端Cookie限制的也属于没有IP限制),极个别的才是一个IP只能投一票。<br />如果不是为了增加投票网站的流量或点击率,作者认为投票活动应该采取严格的IP限制,一个IP参与一次足够了,不需要重复投票。<br />在获取客户端IP方面,应取消使用HTTP_X_FOR转载 2011-01-06 09:59:00 · 4280 阅读 · 0 评论 -
验证码与防识别
<br />验证码开发过程中的3个误区:<br /> <br />1、 背景干扰:干扰线、干扰点、干扰图,基本没有,程序很容易通过高亮度调节去除掉。<br />2、 字符旋转:破解机器人通过数次学习、旋转之后,能够得到90%以上的正确识别率,采用常规字体,能够得到接近100%的识别。<br />3、 随机间距:基本没用,采用提取高亮度之后,采用图片切割的方法,很容易就将随机间距消灭掉。<br /> <br />防止被破解:<br />1、 背景干扰线尽量能够干扰到字符,采用和字符相同的颜色,能够破坏高亮度反原创 2011-01-07 17:25:00 · 1159 阅读 · 0 评论 -
关于Apache mod_rewrite的中文配置、使用和语法介绍
<br />介绍和配置:<br />以数据库后台驱动的动态内容的网站,经常会遇到这些的问题:当在浏览器的地址栏输入一个无效的参数时,会出现数据库的错误提示,这是一个安全的隐患搜索引擎无法收录你的所有网页网页的链接地址是一系列的参数,对浏览用户和搜索引擎都不易理解<br />这些问题都可以通过Apache服务器的一个基本的模块mod_rewrite来解决,默认的安装的Apache就会装有这个模块。要启用这个模块,打开 httpd.conf文件,察看下面的两行是否被屏蔽,第一行是载入mod_rewrite模块,原创 2011-01-14 17:50:00 · 824 阅读 · 0 评论 -
优化 PHP 代码的 40 条建议
<br />1.如果一个方法可静态化,就对它做静态声明。速率可提升至 4 倍。<br /> <br />2.echo 比 print 快。<br /> <br />3.使用 echo 的多重参数(译注:指用逗号而不是句点)代替字符串连接。<br /> <br />4.在执行 for 循环之前确定最大循环数,不要每循环一次都计算最大值。<br /> <br />5.注销那些不用的变量尤其是大数组,以便释放内存。<br /> <br />6.尽量避免使用 __get,__set,__autoload。<br /原创 2011-04-12 17:35:00 · 499 阅读 · 0 评论 -
printf 和 sprintf 的使用
printf可以直接输出,sprintf不直接输出,返回格式化后的内容,返回内容后可以用echo输出,如:echo sprintf(......),其他的与printf一样。详细讲解printf()函数: printf()函数的调用格式为: printf(""转载 2011-09-09 17:24:57 · 795 阅读 · 0 评论 -
serialize()与unserialize()不完全研究
serialize()和unserialize()在php手册上的解释是:serialize — Generates a storable representation of a valueserialize — 产生一个可存储的值的表示unserialize — Creates a PHP value from a stored representationuns转载 2013-01-24 17:04:22 · 362 阅读 · 0 评论 -
表单验证类 Validator使用说明
表单的验证一直是网页设计者头痛的问题,我佛山人编写的表单验证类 Validator就是为解决这个问题而写的,旨在使设计者从纷繁复杂的表单验证中解放出来,把精力集中于网页的设计和功能上的改进上。Validator是基于JavaScript技术的伪静态类和对象的自定义属性,可以对网页中的表单项输入进行相应的验证,允许同一页面中同时验证多个表单,熟悉接口之后也可以对特定的表单项甚至仅仅是某个字符串进行验转载 2013-07-05 11:38:10 · 1550 阅读 · 0 评论 -
PHP magic_quotes_gpc的详细使用方法
我们今天要向大家介绍的是PHP magic_quotes_gpc的具体使用方法。大家都知道在PHP中一个特殊的函数魔术函数,它在引用的过程中只有在传递$_GET,$_POST,$_COOKIE时才会发生作用。1.条件: PHP magic_quotes_gpc=off写入数据库的字符串未经过任何过滤处理。从数据库读出的字符串也未作任何处理。数据: $data=”sno转载 2014-07-28 13:51:04 · 2906 阅读 · 1 评论 -
确保 PHP 应用程序的安全
安全性快速简介Web 应用程序最重要的部分是什么?根据回答问题的人不同,对这个问题的答案可能是五花八门。业务人员需要可靠性和可伸缩性。IT 支持团队需要健壮的可维护的代码。最终用户需要漂亮的用户界面和执行任务时的高性能。但是,如果回答 “安全性”,那么每个人都会同意这对 Web 应用程序很重要。但是,大多数讨论到此就打住了。尽管安全性在项目的检查表中,但是往往到了项目交付之前才开始转载 2014-08-02 15:59:03 · 592 阅读 · 0 评论 -
php 防mysql注入函数 addslashes和mysql_real_escape_string
什么都不说,先上代码12345678function get_str($string){ if(!get_magic_quotes_gpc()) { returnaddslashes($string); } return$string;}转载 2014-07-29 17:30:59 · 897 阅读 · 0 评论 -
php中get_magic_quotes_gpc和get_magic_quotes_runtime 字符转义
get_magic_quotes_gpc会将Get/Post/Cookie中所有的 ' (单引号), " (双引号), \ (反斜线) and 空字符加上反斜杠转义。get_magic_quotes_runtime设置为on的时候会将数据库中取出来的 ' (单引号), " (双引号), \ (反斜线)这些字符加上反斜杠转义。get_magic_quotes_gpc并不能通过转载 2014-07-29 17:29:47 · 855 阅读 · 0 评论 -
那些强悍的PHP一句话后门
亦家从建立起就有一个很重要的服务项目 – 安全监测,而上线后很少有相关的佐证内容,那从今天开始也就开始了这一部分的分享与撰写。我们以一个学习的心态来对待这些PHP后门程序,很多PHP后门代码让我们看到程序员们是多么的用心良苦。强悍的PHP一句话后门这类后门让网站、服务器管理员很是头疼,经常要换着方法进行各种检测,而很多新出现的编写技术,用普通的检测方法是没法发现并处理的。今天我们细数一转载 2014-08-04 17:15:47 · 4724 阅读 · 0 评论 -
PHP上传大文件的设置方法
通过设置nginx的client_max_body_size解决nginx+php上传大文件的问题: 用nginx来做webserver的时,上传大文件时需要特别注意client_max_body_size这个参数,否则会中断在nginx的请求中,在php中是无法记录到访问的.一般上传大文件流程: 首先修改php.ini文件: 参数 设置 说明 file_uploads o转载 2014-08-01 12:46:35 · 907 阅读 · 0 评论 -
JQuery上传插件Uploadify使用详解
Uploadify是JQuery的一个上传插件,实现的效果非常不错,带进度显示。不过官方提供的实例时php版本的,本文将详细介绍Uploadify在Aspnet中的使用,您也可以点击下面的链接进行演示或下载。官方下载官方文档官方演示首先按下面的步骤来实现一个简单的上传功能。1 创建Web项目,命名为JQueryUploadDemo,从官网上下载最新的版本解压后添加到项目中。2转载 2014-08-01 12:56:19 · 552 阅读 · 0 评论 -
CKEditor3.6 增加自定义插件
先到http://ckeditor.com/这里下载最新版本的CKEditor,我下载的是3.3.1版,大概有2M左右,包含了全部源码和测试用例。下载完毕后,解压到硬盘,假设CKEditor解压后的目录是${ckeditor},下面提到的都是用这个进行替代。下面就开始一步步制作属于我们自己的插件了。一、创建插件目录结构1、进入到${ckeditor}\plugins目录下,创建目录hell转载 2014-08-09 20:25:34 · 935 阅读 · 0 评论 -
php获取文件mime类型的几种方法
MIME类型就是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。php获取文件mime类型有以下几种方法:1、mime_content_type()函数判断获取mime类型 mime_content_type返回指定文件的MIME类型,用法:转载 2014-08-28 09:47:16 · 1209 阅读 · 0 评论 -
PHP5.3 与 5.5废弃与过期函数整理汇总
很多PHP程序员都知道,从PHP5.3开始加入了一个新的报错级别DEPRECATED,即将废弃/过期。下面我们来一个个版本梳理一下。在php5.3被放弃的函数有:?1234567891011121314151617转载 2016-10-25 09:27:54 · 1008 阅读 · 0 评论