php免费开源的手册软件程序

特点&应用:

  • 适合制作API文档、介绍手册/说明文档、数据字典等;
  • 免费开源;
  • 基于thinkphp;
  • 支持markdown语法;
  • 支持多项目;
  • 可免费使用官方在线版,也可部署在自己的服务器上使用
  • 等等

继续阅读“php免费开源的手册软件程序”

获取指定年月的第一天和最后一天的时间戳

【摘自:http://blog.csdn.net/fgdfgasd/article/details/42005041】

 

php获取远程图片并把它保存到本地

[导读] 在php中我们经常使用写一些简单的采集功能,这样可以自动把远程服务器的图片或资源直接采集保存到本地服务器中,下面我来给大家详细介绍远程图片并把它保存到本地几种方法。例1 代码如下

在php中我们经常使用写一些简单的采集功能,这样可以自动把远程服务器的图片或资源直接采集保存到本地服务器中,下面我来给大家详细介绍远程图片并把它保存到本地几种方法。例1

 代码如下
/*
*功能:php多种方式完美实现下载远程图片保存到本地
*参数:文件url,保存文件名称,使用的下载方式
*当保存文件名称为空时则使用远程文件原来的名称
*/
function getImage($url,$filename=”,$type=0){
if($url==”){return false;}
if($filename==”){
$ext=strrchr($url,’.’);
if($ext!=’.gif’ && $ext!=’.jpg’){return false;}
$filename=time().$ext;
}
//文件保存路径
if($type){
$ch=curl_init();
$timeout=5;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
$img=curl_exec($ch);
curl_close($ch);
}else{
ob_start();
readfile($url);
$img=ob_get_contents();
ob_end_clean();
}
$size=strlen($img);
//文件大小
$fp2=@fopen($filename,’a’);
fwrite($fp2,$img);
fclose($fp2);
return $filename;
}

继续阅读“php获取远程图片并把它保存到本地”

在centos中安装memcache提升性能

背景:使用linux服务器(centos);

前提:使用ssh 登录服务器;

操作:按以下提示执行命令。

一、 下载安装libevent

执行以下命令下载:

分别执行以下命令解压安装:

1

2

3

4
执行以下命令测试是否安装成功,若如截图所示,则安装成功:

5

 

二、下载安装memcached

退回主目录:

执行以下命令下载:

执行以下命令解压安装:

执行以下命令测试是否安装成功,若如截图所示,则安装成功:

6

三、下载安装php_memcache扩展

退回主目录:

执行以下命令下载:

执行以下命令解压安装:

查询服务器文件phpize路径:

7

在memcache-3.0.8目录下,执行以下命令:

查询服务器文件php-config路径:

8

最后执行以下命令完成安装memcache,

若以上执行结果最后部分是以下截图内容,则安装成功:

9

四、配置php.ini

通过浏览器查看服务器的phpinfo内容,找到php.ini文件路径,如下图,

10

使用VIM编辑此文件,在文件最后,新增以下内容,

重启Apache,再次查看phpinfo信息内容,若存在以下内容,则配置成功,

11

五、启动memcache

(注: 可将127.0.0.1 替换成自己服务器的外网IP)

(PS,若以上命令无法启动memcache,尝试忽略最后的-P 参数信息。)

执行以下命令,若结果如截图所示,则启动成功:

12

(注:执行以下命令,结束memcache服务)

 

 

在centos系统中安装eAccelerator为PHP加速

eAccelerator是一个开源php加速,优化和动态内容缓存,提高了性能php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。它还有对脚本起优化作用,以加快其执行效率。使PHP代码执行效率能提高1-10倍。

 版本比较

eaccelerator 0.9.5.3 只支持php 5.2.x版本,支持数据缓存;

eaccelerator 0.9.6.1 只支持php 5.3.x版本,只对PHP做加速处理;

eaccelerator 1.0 dev 只支持php 5.4.x版本,只对PHP做加速处理。

继续阅读“在centos系统中安装eAccelerator为PHP加速”

无限分类的树状迭代方法

点此查看执行结果

转载自:http://www.hiceon.com/topic/zhuiye-recursiveiteratoriterator/

关于PHP的序列化(serialize)和反序列化(unserialize)在X86、X64系统中差异问题

问题背景@

近日在对ECStore进行系统集群部署的过程中,由于开发环境使用的是X64的CentOS系统,而在测试虚拟集群中使用X86的CentOS系统。部署后发现很多功能都存在问题,包括widget、商品附加属性等都无法正常显示,通过代码回溯发现,在数据库中存储的序列化数据在系统中进行反序列化会返回false。

问题解析@

在64位系统中

关于JSON_DECODE@

其实在将含有大整形数值的数组变为字符串的方法中基本都存在类似的问题,例如JSON_DECODE也会因为位元问题导致解码失败,这个问题估计要比序列化更为严重,因为目前流行的webservice中,尤其是RESTFUL所用到数据格式是JSON,如果在位元不同的混杂系统环境下,就可能会导致无法正确解析数据的问题。

在PHP 5.4+中,该问题得到了有效的解决。你可以使用json_decode的第四个参数来将大整数作为字符串进行解析。如下:

转载自:http://www.hiceon.com/topic/the-x86-and-x64-system-of-the-php-serialize-and-unserialize-discrepancies/