PHP Xcache 使用笔记
[ 2014-10-21 09:52:44 | 作者: admin ]
XCache 是一个又快又稳定的 PHP opcode 缓存器. 经过良好的测试并在大流量/高负载的生产机器上稳定运行. 经过(在 Linux 上)测试并支持所有现行 PHP 分支的最新发布版本, 如 PHP_4_3 PHP_4_4 PHP_5_0 PHP_5_1 PHP_5_2 HEAD(6.x), 并支持线程安全/Windows. 与同类 opcode 缓存器相比更胜一筹, 比如能够快速跟进 PHP 版本.下面达内php培训老师为大家分享具体内容。
直接一点形容Xcahce的2个特点:
将PHP代码进行编译(表现类似于.NET和Java的编译,内部机制不同),这样可以不用重复读取PHP文件,加速整个程序的运行效率;
可以缓存数据到内存中,直接可以方便调用(我一直很诟病PHP为什么连Application也没有),例如你的一些不会经常改动的数据,只用一次从数据库读取...
阅读全文…
直接一点形容Xcahce的2个特点:
将PHP代码进行编译(表现类似于.NET和Java的编译,内部机制不同),这样可以不用重复读取PHP文件,加速整个程序的运行效率;
可以缓存数据到内存中,直接可以方便调用(我一直很诟病PHP为什么连Application也没有),例如你的一些不会经常改动的数据,只用一次从数据库读取...
阅读全文…
php文本文件缓存2种方式的效率
[ 2014-09-22 15:06:33 | 作者: admin ]
p.s. 文本文件的效率,终归不如memcache,对于修改较多的数据,还是要用memcache
前言:
在开发MooPHP的过程中,为了寻找更为高效的缓存方式,对两种最常用的缓存方式进行了测试。
PHP常用缓存方式:
第一种,把需要缓存的数据进行处理,形成PHP可以直接执行的文件。在需要缓存数据的时候,通过include方式引入,并使用。
第二种,把需要的数据通过serialize函数序列化后直接保存到文件。在需要使用缓存数据的时候,通过反序列化读入文件内容并复制给需要的变量,然后使用。
测试结果:
通过测试我们发现,第二种也就是serialize缓存数据的方式更加高效。(数据略去,最后提供了文章地址下载,大家可以自行测试)
点击查看 http://www.ccvita.com/311.html
接受别人的建议对该class进行改进 memcache的操作方式
支持 serialize存储
支持 可执行文件两种存储方式
前言:
在开发MooPHP的过程中,为了寻找更为高效的缓存方式,对两种最常用的缓存方式进行了测试。
PHP常用缓存方式:
第一种,把需要缓存的数据进行处理,形成PHP可以直接执行的文件。在需要缓存数据的时候,通过include方式引入,并使用。
第二种,把需要的数据通过serialize函数序列化后直接保存到文件。在需要使用缓存数据的时候,通过反序列化读入文件内容并复制给需要的变量,然后使用。
测试结果:
通过测试我们发现,第二种也就是serialize缓存数据的方式更加高效。(数据略去,最后提供了文章地址下载,大家可以自行测试)
点击查看 http://www.ccvita.com/311.html
接受别人的建议对该class进行改进 memcache的操作方式
支持 serialize存储
支持 可执行文件两种存储方式
使用Snoopy进行模拟登陆、采集(curl)
[ 2014-09-03 09:25:47 | 作者: admin ]
Snoopy是一个使用PHP写的采集类,使用了一下发现功能比较强大,几乎可以模拟浏览器的所有行为,可以实现的功能有:
比起使用curl,fsockopen等函数来说方便很多,下面总结一下这个类一些属性与方法的作用。
方法:
fetch($url) 该方法用于抓取网页内容,类似于file_get_contents
submit($posturl,$params,$files) 该方法提交表单数据,第二个参数是一个一维数组,例如array('user'=>'zhangsan','pwd'=>'lisi'),第三个参数是可选参数,上传文件时用到,例如array('myfile' => './images/test.jpg')
fetchlinks($url) 该方法用于获取网页所有链接
fetchform($url) 该方法用于获取网页上的form表单内容
...
阅读全文…
比起使用curl,fsockopen等函数来说方便很多,下面总结一下这个类一些属性与方法的作用。
方法:
fetch($url) 该方法用于抓取网页内容,类似于file_get_contents
submit($posturl,$params,$files) 该方法提交表单数据,第二个参数是一个一维数组,例如array('user'=>'zhangsan','pwd'=>'lisi'),第三个参数是可选参数,上传文件时用到,例如array('myfile' => './images/test.jpg')
fetchlinks($url) 该方法用于获取网页所有链接
fetchform($url) 该方法用于获取网页上的form表单内容
...
阅读全文…
php中的几个目录函数
[ 2014-08-15 15:53:10 | 作者: admin ]
<?php
echo 'documentroot:'.$_SERVER['DOCUMENT_ROOT'].'<br>'; //根目录,在apache的配置文件里定义:httpd.conf 比如:DocumentRoot "D:/work/php_root"
echo 'httphost:'.$_SERVER['HTTP_HOST'].'<br>'; //域名,比如:localhost
echo 'phpself:'.$_SERVER['PHP_SELF'].'<br>'; // 从根目录到文件本身的路径
echo 'script filename'.$_SERVER['SCRIPT_FILENAME'].'<br>'; //documentroot+phpself
echo 'request uri'.$_SERVER['REQUEST_URI'].'<br>'; //从根目录开始所有的URL字符串,包括问号之后的字符
...echo 'documentroot:'.$_SERVER['DOCUMENT_ROOT'].'<br>'; //根目录,在apache的配置文件里定义:httpd.conf 比如:DocumentRoot "D:/work/php_root"
echo 'httphost:'.$_SERVER['HTTP_HOST'].'<br>'; //域名,比如:localhost
echo 'phpself:'.$_SERVER['PHP_SELF'].'<br>'; // 从根目录到文件本身的路径
echo 'script filename'.$_SERVER['SCRIPT_FILENAME'].'<br>'; //documentroot+phpself
echo 'request uri'.$_SERVER['REQUEST_URI'].'<br>'; //从根目录开始所有的URL字符串,包括问号之后的字符
阅读全文…
PHP多个连续空格回车替换为一个,如何写更简短?
[ 2014-07-14 22:38:28 | 作者: admin ]
php多个连续空格( )或者分段<br/>替换为一个。如何改写下面这个更加简短?
阅读全文…
function re($content)
{
/* return preg_replace('/(<br\s*\/?>){3,}|( ){3,}/i'),'\\1',$content); */ //错误!
/* return preg_replace('/(<br\s*\/?>| ){3,}/i'),'\\1',$content); */ //错误!
return preg_replace(array('/(<br\s*\/?>){3,}/i','/( ){3,}/i'),'\\1',$content);
}
//test
$content = '1111 <br><br><br><br
...{
/* return preg_replace('/(<br\s*\/?>){3,}|( ){3,}/i'),'\\1',$content); */ //错误!
/* return preg_replace('/(<br\s*\/?>| ){3,}/i'),'\\1',$content); */ //错误!
return preg_replace(array('/(<br\s*\/?>){3,}/i','/( ){3,}/i'),'\\1',$content);
}
//test
$content = '1111 <br><br><br><br
阅读全文…
PHP中DATE函数与实际时间相差8小时的解决办法,时区问题timezone
[ 2014-07-03 15:26:09 | 作者: admin ]
一、问题原因
从php5.1.0开始,php.ini里加了date.timezone这个选项,并且默认情况下是关闭的。DATE()函数显示的时间都是格林威治标准时间,和北京时间相差正好8个小时。其他时间函数如strtotime()也会有此问题,以下解决方法均可适用。
二、解决办法
方法一:修改php.ini设置:
打开php.ini,查找“date.timezone =”,去掉前面的分号,并在其后面加上设置的时区值,重启服务即可。
如:date.timezone=PRC
部分时区值:
格林威治(默认时区):Etc/GMT。东八区快8小时为Etc/GMT-8,西八区慢8小时为Etc/GMT+8。
大陆内地可用的值有:Asia/Chongqing、Asia/Shanghai、Asia/Urumqi 、PRC。依次为重庆,上海,乌鲁木齐,中华人民共和国。
...
阅读全文…
从php5.1.0开始,php.ini里加了date.timezone这个选项,并且默认情况下是关闭的。DATE()函数显示的时间都是格林威治标准时间,和北京时间相差正好8个小时。其他时间函数如strtotime()也会有此问题,以下解决方法均可适用。
二、解决办法
方法一:修改php.ini设置:
打开php.ini,查找“date.timezone =”,去掉前面的分号,并在其后面加上设置的时区值,重启服务即可。
如:date.timezone=PRC
部分时区值:
格林威治(默认时区):Etc/GMT。东八区快8小时为Etc/GMT-8,西八区慢8小时为Etc/GMT+8。
大陆内地可用的值有:Asia/Chongqing、Asia/Shanghai、Asia/Urumqi 、PRC。依次为重庆,上海,乌鲁木齐,中华人民共和国。
...
阅读全文…
PHP中获取文件扩展名的N种方法
[ 2014-05-27 10:09:29 | 作者: admin ]
PHP中获取文件扩展名的N种方法
从网上收罗的,基本上就以下这几种方式:
第1种方法:
function get_extension($file)
{
substr(strrchr($file, '.'), 1);
}
第2种方法:
function get_extension($file)
{
return substr($file, strrpos($file, '.')+1);
}
第3种方法:
function get_extension($file)
{
return end(explode('.', $file));
}
第4种方法:
function get_extension($file)
{
$info = pathinfo($file);
return $info['extension'];
}
第5种方法:
function get_extension($file)
...
阅读全文…
从网上收罗的,基本上就以下这几种方式:
第1种方法:
function get_extension($file)
{
substr(strrchr($file, '.'), 1);
}
第2种方法:
function get_extension($file)
{
return substr($file, strrpos($file, '.')+1);
}
第3种方法:
function get_extension($file)
{
return end(explode('.', $file));
}
第4种方法:
function get_extension($file)
{
$info = pathinfo($file);
return $info['extension'];
}
第5种方法:
function get_extension($file)
...
阅读全文…
No input file specified 的原因
[ 2014-05-23 11:03:07 | 作者: admin ]
p.s. windows下遇到一个现象,php.ini中如果直接使用盘符 f: 就会出现这个提示,后面加上英文的路径 f:/php 就可以正常 ,如
解决NGINX PHP "No input file specified"
打开一个页面<?php phpinfo(); ?> 然后在游览器下运行 结
No input file specified.
以下内容为网络收集
FastCGI模式下访问php文件时,出现No input file specified.错误
查看access.log 发现是 404
原因分析:
任何对.php文件的请求,都简单地交给php-cgi去处理,但没有验证该php文件是否存在。PHP文件不存在,没办法返回普通的404错误,它返回 ...
阅读全文…
open_basedir = "F:/php;f:/php;C:/WINDOWS/TEMP/;"
解决NGINX PHP "No input file specified"
打开一个页面<?php phpinfo(); ?> 然后在游览器下运行 结
No input file specified.
以下内容为网络收集
FastCGI模式下访问php文件时,出现No input file specified.错误
查看access.log 发现是 404
原因分析:
任何对.php文件的请求,都简单地交给php-cgi去处理,但没有验证该php文件是否存在。PHP文件不存在,没办法返回普通的404错误,它返回 ...
阅读全文…