很多时候用户需要从网站下载文件,如果文件是可以通过一个固定链接公开获取的,那么我们只需将文件存放到 webroot 下的目录里就好。但大多数情况下,我们需要做权限控制,例如下载 PDF 账单,又例如下载网盘里的档案。这时,我们通常借助于脚本代码来实现,而这无疑会增加服务器的负担。

例如下面的代码:
继续阅读

如果使用编译的方式来安装php,多几次,你会发现,会出现各种各样的报错.

下面汇总一些情况,以备查阅.

1) Configure: error: xml2-config not found. Please check your libxml2 installation.

Solutions :

Quote:

#yum install libxml2 libxml2-devel (For Redhat & Fedora)

# aptitude install libxml2-dev      (For ubuntu)

继续阅读

介绍

在前端开发中,为了让中文在不同的环境下都能很好的显示,一般是将中文转化为unicode格式,即\u4f60,比如:”你好啊”的 unicode编码为”\u4f60\u597d\u554a”。

JS里将中文转为unicode编码很简单。

function convert2Unicode(str) {
	return str.replace(/[\u0080-\uffff]/g,
	function($0) {
		var tmp = $0.charCodeAt(0).toString(16);
		return "\u" + new Array(5 - tmp.length).join('0') + tmp;
	});
}

并且也很简单,直接alert出来或者innerHTML到dom节点里都可以。

但如果将\u4f60\u597d\u554a”字符传递给php,php就不能直接echo或者其他操作了。直接echo的话还是原生的字符,不 能自动转化为中文。

继续阅读

定义和用法

clearstatcache() 函数清除文件状态缓存。

clearstatcache() 函数会缓存某些函数的返回信息,以便提供更高的性能。但是有时候,比如在一个脚本中多次检查同一个文件,而该文件在此脚本执行期间有被删除或修改的危险时,你需要清除文件状态缓存,以便获得正确的结果。要做到这一点,就需要使用 clearstatcache() 函数。

继续阅读

最近发现写的一个Smarty插件执行有问题。排查了半天,也没发现问题。

我是读取一个文件,然后处理并追加一段字符串,再写入。出问题的情况是多次执行的时候,执行一次就没问题,最后简化处理,就直接附在读取的内容之后,发现得到的结果只是最后一次执行的追加内容。

继续阅读

以前分析xdebug用的是(wincachegrind)http://sourceforge.net/projects/wincachegrind/

现在直接安装webgrind来调试速度会更好

http://xdebug.org/

windows

  1. 编辑php.ini,先注释掉zend:
    [Zend]
    ;zend_extension_ts = “D:/Xampp/php/zendOptimizer/lib/ZendExtensionManager.dll”
  2. 启用x-debug
    [xdebug]
    zend_extension_ts = “D:/Xampp/php/ext/php_xdebug-2.0.0-5.2.2.dll”;必须为完整路径
    xdebug.profiler_enable_trigger = 1
    xdebug.profiler_output_dir=”D:/Xampp/tmp/xdebug”

继续阅读

本文转自: http://www.phpv.net/html/292.html

综述

Session指的就是用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏览这个网站所花费的时间。从上述的定义中我们可以看到,Session实际上是一个特定的时间概念。

一般来说,在网站上某一个页面中的变量(指服务器端变量,下同)是不能在下一页中用的,有了session就好办了。session中注册的变量可以作为全局变量使用。这样我们就可以将session用于用户身份认证,程序状态记录,页面之间参数传递。
继续阅读