您现在的位置:首页
--> PHP
我曾经发过一篇讲使用curl获取需要登陆内容的文章,但其实,自5.0开始,使用file_get_contents就可以完成.(前提是开启了allow_url_fopen),下面以一个简单的例子说明一下:1.先看一下目标网页(假设是http://localhost/response.php)response.phpPHP代码 "; print_r($_POST); print_r($_COOKIE); ?>本文讲述的只是http post请求的发送,所以,目标页只是回显所收到的post和cookie2....
一直以来,由于php本身的session机制不能跨机,令很多phper感到不爽,现在流行的解决方案主要有:1)使用数据库来实现2)自己写server端,通过改写session处理函数来请求3)使用nfs等跨机存储来保存session4)使用memcache来保存5)使用zend platform提供的解决方案其中的1-4都是通过改用可以跨机的储存机制,再使用session_set_save_handler()来实现,5是zend公司的商业产品(不过据之前在使用的同事反映,效果不太满意),以上的方案,各有利弊,不...
一直以为,全局变量(使用global声明)是在程序的所有地方都可以用的(不然怎么能叫全局?呵),但在最近的工作中,接连碰到几次全局变量无效的郁闷的事,记录一下出现的原因.1.错误重现问题出现在用我的简易框架时,在view中使用原来第三方定义好的函数时(此函数比较独立)
下面是对在 .NET Framework 3.5 中对 PHP、Binary、SOAP、XML、JSON、Hessian 和 Burlap 序列化/反序列化的效率对比,其中 PHP 序列化来自最新版本的 PHPRPC 3.0.1 for .NET,Hessian 和 Burlap 序列化来自Hessian C# 的最新版 1.3.3,其它的序列化都是采用 .NET Framework 3.5 中内置的功能。
之前看到robbin基于资源的HTTP Cache的实现介绍,想到这是一个很有意思的功能,原理很简单,但很多人都会忽略,于是乎打算集成到ColaPHP框架中来,让浏览器缓存动态内容,对于一些由动态脚本生成、更新不频繁但又会被用户重复访问的页面内容,还是很有意义的。
总结: 1)当需要遍历一个大文件进行时,可以使用切分的方法切成n个较少的文件,再同时并行调用的方式处理,可以有效的减少处理时间. 2)在遍历入库的操作中,有效的合并可以减少数据库的操作次数
1)已经有for win的memcached了,可以在此下载(http://jehiah.cz/projects/memcached-win32/)下载回来,直接解压后,进入解压后的目录,使用memcached -d install安装成一个windows的服务,要查看其它参数,可用memcached -h2)每个被放到memcached的数据,key不能超过250个字节,value不能超过1M,否则会存不进去3)当分配的内容全部用完后,再往里面放数据时,已过生命期的先被清除(已过生命期的数据,会在get的时候被清除),如果还不够用,就会自...
• 将数组定义为常量
近日,在phpclass中看到一个将数组定义为常量的类,本人也比较喜欢使用定义常量作为配置项的开发方式,把相关的一组配置项定义为常量,也会经常用到.于是下来看看,原理很简单,在此记录一下:1)使用两个静态的方法set和get来设定和获取内容2)set的时候,将数组使用var_export函数转化,作为define的值3)get的时候,将常量值使用eval(\'return \'.$constName.";")方式反解从上面可以看出,实现方法只是将数组转成可反解的字串存到常...
“PHP程序员,特别是从php4,甚至是PHP3中成长起来的程序员,很多都不习惯使用抛出异常这种错误处理方式。虽然php5引入了异常处理机制,但是很多php程序员还是没有真正的掌握并使用它。网站完全开放的特性,决定了网站比任何传统软件都更希望做到“系统看起来永远都是能够正常工作的”,所以采用正确的程序错误处理方式尤为重要。理论上来说,如果设计足够完美,开发人员足够谨慎,程序出现错误的可能为0.但事实恰...
一、使用缓存要开启Smarty的缓存,只需将caching设为true,并指定cache_dir即可. 使用cache_lefetime指定缓存生存时间,单位为秒,要对相同页面生成多个不同的缓存,在display或fetch中加入第二参数cache_id,如: //此特性可用于对不同的$_GET进行不同的缓存$smarty->display(\'index.tpl\',$my_cache_id); 二、清除缓存 clear_all_cache();//清除所有缓存clear_cache(\'index.tpl\');//清除index.tpl的缓存clear_cache(\'index.tpl...
前一阵子网站新上了相册功能,可最近总发现有一些用户上传的图片文件链接失效,代码检查了很多次,测试也做的比较充分了,但还是会出现上传失败的问题,很是郁闷,今天终于找到了解决办法。从备份源中找到了用户上传失败的JPG图片,进行上传测试,上传完成后页面提示: Warning: imagecreatefromjpeg(): ‘/tmp/lalala’ is not a valid JPEG file in /path/upload.php on line 1 出现这个Warning是由于GD函数库检测发...
要说它们的联系,其共同点就是empty()和isset()都是变量处理函数,作用是判断变量是否已经配置,正是由于它们在处理变量过程中有很大的相似性,才导致对它们的关系认识不足。单从empty()和isset()这两个函数本身来考虑的话会把人弄得更糊涂,换一个角度来它。empty()和isset()的处理对象无外乎未定义变量,0,空字符串。如果变量为0,则empty()会返回TRUE,isset()会返回TRUE;如果变量为空字符串,则empty()会返回TRUE,isset()会...
filemtime ( string filename )返回文件上次被修改的时间,出错时返回 FALSE。时间以 Unix 时间戳的方式返回,可用于 date()。例如:$a=filemtime("log.txt"); echo "修改时间:".date("Y-m-d H:i:s",$a)."filectime ( string filename )返回文件上次 inode 被修改的时间,如果出错则返回 FALSE。时间以 Unix 时间戳的方式返回。例如:$a=filectime("log.txt"); echo "创建时间:".date("Y-m-d H:i:s",$a)."fileatime ( string fil...
php的ftp函数简单应用
定义和用法error_reporting() 设置 PHP 的报错级别并返回当前级别。语法error_reporting(report_level)如果参数 level 未指定,当前报错级别将被返回。
这个函数已经用过好几次了,不过用了几次查了几次;今天又遇到了,结果绞尽脑汁还是记不起来到底dirname这个函数的作用,然后又查了一下手册,做了几个试验;这个函数的解释是:给出一个包含有指向一个文件的全路径的字符串,本函数返回去掉文件名后的目录名。很明显,$path="e:/a/b/c.php"这样的情况是返回e:/a/b。这个应该是没有疑问的。但是不明白如果给出的$path="e:/a/b/c/"这样的情况是返回什么呢,手册上没有例子,自己就做...
1 前言 PHP被大量的应用于Web的后台CGI开发,通常是在用户数据数据之后得出某种结果,但是如果用户输入的数据不正确,就会出现问题,比如说某人的生日 是”2月30日”!那应该怎么样来检验暑假是否正确呢? 在PHP中加入了正则表达式的支持,让我们可以十分方便的进行数据匹配。 2 什么是正则表达式:简单的说,正则表达式是一种可以用于模式匹配和替换的强大工具。在几乎所有的基于UNIX/LINUX系统的软件工具中找到正则...
根据16进制输出所有汉字
做一个首页调用图像, 有时候往往需要获得固定大小的图像,因为首页的图像位置通常由设计人员指定好了,如果是做最新发布图像调用,因为不知道客户会上传什么比例的图像,所以, 有时候也就没有办法确定图像的比例,前台页面编写人员通常会采用固定 img 元素高宽的办法来达到控制图像不溢出,但如果图像的比例不是需要的比例,就会造成图像调用后变形,很大程度上影响了页面的美观,有解决的方法是,按照原图比例进行缩放,缩放后...
PHPMailer是PHP语言的优秀的邮件发送包。支持 SMTP,CC,BCC,Sendmail 等多种发送方式。下面是一个基于 PHPMailer 的发送函数,旧代码了: function smtp_main_send( $to, $subject, $message, $from, $fromName ) { $mail = new PHPMailer(); $mail->CharSet = “UTF-8″; // 设置编码 $mail->IsSMTP(); // 设置使用SMTP服务发送 $mail->Host = “smtp.mail.com”; $mail->Username = R...
近3天十大热文
- [71] IOS安全–浅谈关于IOS加固的几种方法
- [70] Twitter/微博客的学习摘要
- [65] 如何拿下简短的域名
- [64] android 开发入门
- [63] Go Reflect 性能
- [62] find命令的一点注意事项
- [60] 流程管理与用户研究
- [59] 读书笔记-壹百度:百度十年千倍的29条法则
- [59] 图书馆的世界纪录
- [58] Oracle MTS模式下 进程地址与会话信
赞助商广告