魏长东

weichangdong

正在查看: php 分类下的文章(第 8 页 / 共 94 篇)

PHP5.2、5.3、5.4、5.5、5.6 对比以及功能详解

截至目前(2014.2), PHP 的最新稳定版本是 PHP5.5, 但有差不多一半的用户仍在使用已经不在维护 [注] 的 PHP5.2, 其余的一半用户在使用 PHP5.3 [注].
因为 PHP 那“集百家之长”的蛋疼语法,加上社区氛围不好,很多人对新版本,新特征并无兴趣。
本文将会介绍自 PHP5.2 起,直至 PHP5.6 中增加的新特征。

  • PHP5.2 以前:autoload, PDO 和 MySQLi, 类型约束
  • PHP5.2:JSON 支持
  • PHP5.3:弃用的功能,匿名函数,新增魔术方法,命名空间,后期静态绑定,Heredoc 和 Nowdoc, const, 三元运算符,Phar
  • PHP5.4:Short Open Tag, 数组简写形式,Traits, 内置 Web 服务器,细节修改
  • PHP5.5:yield, list() 用于 foreach, 细节修改
  • PHP5.6: 常量增强,可变函数参数,命名空间增强

»»阅读全文

popen之php多进程

运行系统命令常常用exec,system之类的,

但是今天发现了proc_open和popen,proc_open自称比popen多一些功能,确实,proc_open有很多功能,可以与程序交互,

——但是,他是同步的,就是说一个程序没有运行结束,不能运行下一个!就没办法异步多进程了。

——但,popen是异步的

»»阅读全文

利用PHP操作Linux消息队列完成进程间通信【转】

当我们开发的系统需要使用多进程方式运行时,进程间通信便成了至关重要的环节。消息队列(message queue)是Linux系统进程间通信的一种方式。

PHP的sysvmsg模块是对Linux系统支持的System V IPC中的System V消息队列函数族的封装。我们需要利用sysvmsg模块提供的函数来进进程间通信。先来看一段示例代码_1:

»»阅读全文

array_filter的妙用

不能直接用empty函数判断是否为空,因为当array(“name”=>”);不会为空,它有键name,虽然它的值为空,我们可以用array_filter()过滤掉数组中值为空的键.

»»阅读全文

php多路复用(多线程)【转】

问题: 
有没有办法在php中实现多线程呢?

假设你正在写一个基于多台服务器的php应用,理想的情况时同时向多台服务器发送请求,而不是一台接一台。
可以实现吗?

回答:

当有人想要实现并发功能时,他们通常会想到用fork或者spawn threads,但是当他们发现php不支持多线程的时候,大概会转换思路去用一些不够好的语言,比如perl。

其实的是大多数情况下,你大可不必使用fork或者线程,并且你会得到比用fork或thread更好的性能。

»»阅读全文

CI框架(stblog)实现memcache缓存或者KVDB缓存

本文的实现环境是SAE下,使用CI框架的stblog系统搭建的博客http://swordman.sinaapp.com。在原有代码基础上修改了几个地方的代码实现的。

实现的功能有

1.可用memcache缓存或者kvdb缓存。

//在这里配置,如果用kvdb则写‘kvdb’

$config['sae_output_cache'] = 'memcache';

/* End of file config.php */
/* Location: ./application/config/config.php */

2.实现主页不缓存。这么做避免发表新文章主页不显示的问题。

3.实现登陆后台,管理后台页面不缓存。

»»阅读全文

SAE下CI框架之忠义难两全

最近折腾了好久,终于实现了SAE下memcache和KVDB的缓存,速度杠杠滴,但是出现一个问题,就是用SAE的Counter实现的文章浏览次数也被缓存了,然后一直不变。真是忠义难两全啊!

»»阅读全文

linux下配置nginx和php

源码安装了nginx,yum安装了php。大概的步骤是:
yum install -y php php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt libmcrypt-devel php-fpm(安装php以及一些扩展)

»»阅读全文