原从哲学与进化论看编程语言之争
从哲学与进化论看编程语言之争
Lenix 杨延斌
编程语言之争由来以久,编程界向来是此语言看不惯彼语言。c鄙视java,java鄙视.net,.net 鄙视php.今天就来以哲学与进化论的角度谈谈编程语言之争。
远古时期,上帝创造了万物,共同组成了栩栩如生的地球,有人类,各种动物,植物。他们共同组成了一个美好和平共处的操作系统-地球。每种生物都有其各自特点,鸟能飞,鱼善游,猴能爬树,植物生产果子与粮食供人类与动物食用。各个物种各司其职,相伴共生。共同组成了一个完整的可持续运行的系统。…
原PHP 设计模式-工厂类
<?php
class SmsApi {
public static function create($smsprovider){
$sms = null;
switch ($smsprovider) {
case 'duanxinwang':
$sms = new DuanXinWang();
break;
case 'baidusms':
$sms = new BaiduSms();
break;
}
return $sms;
}
}
class DuanXinWang {
public function getsms(){
}
… 原swoole 开发注意事项–by桶哥9月13号优才分享ppt
swoole里的对象是长驻内存的,所有象连接池 、配置项、单例等都是持久化的。
编写swoole程序要注意内存控制,像一定要及时释放资源,像mysql连接,文件读写,socket 连接等都要及时关闭,这是和普通php不一样的地方。static数据 也要及时清除,另外不建议在swoole里面用超全局全量,因为swoole是多进程的,所有进程间的变量不能共享,如果一定要使用,建议在框架里把超全局变量封装好。
swoole不适合做cpu密集计算型项目。
对mysql连接特别要注意,因为是长连接,所以时间长了,再去执行mysql查询就会出现 mysql has gone away错误, 解决办法是查询前采用ping 检测,如果连接断了,就重连。
还有要注意的是tcp粘包处理。
热加载 http://wiki.swoole.com/wiki/page/20.html 。
数据共享方法:可以用swoole table, apcu,yac ,redis,memcached.
原因:mysql server主动关闭
转载请注明:来源:http://blog.p2hp.com/archives/2298…
原用Zephir开发PHP扩展.
Zephir 是一种类似于PHP的语言的高级语言,简化了PHP扩展的创建和可维护性. zephir扩展输出C代码 ,因此能被主流的C编译器编译和优化,如 gcc/clang/vc++.
它是优秀的Phalcon团队为开发第二版本框架所编写的新兴语言,其语法和PHP 非常相信,开发扩展非常方便,执行效率上据说是与C不分上下, 他的编译流程如下:Zephir -> C -> bin.
项目地址 https://github.com/phalcon/zephir 官网http://zephir-lang.com/
本文 主要分享Zephir在ubuntu下的安装与使用方法.…
原MySQL自动化运维及语句审核工具 Inception的安装与使用
Inception 是去哪儿网发布的MySQL自动化运维及语句审核工具 . 项目地址 https://github.com/mysql-inception/inception. 文档说明:
http://mysql-inception.github.io/inception-document/.…
原thinkphp 框架 静态化,生成html
thinkphp 框架 静态化,生成html
使用thinkphp自带的buildHtml方法.
$this->buildHtml($Id, HTML_PATH .MODULE_NAME.CONTROLLER_NAME.ACTION_NAME. '/', '');
读取的时候,不经过php,直接读html文件, 需要nginx rewrite.
生成 html时,可在管理后台,的方法里加上面buildHtml方法生成.
前台或后台,每更改一次页面,要重新生成一次html.
此适用于非实时的 thinkphp页面.
可极大提高thinkphp的性能.…
原使用php blenc扩展加密php源代码
使用php blenc扩展加密php源代码,不但可以加密源代码,还可以设置过期时间。
扩展地址 http://pecl.php.net/package/blenc
注意:不要启用opcache扩展,否则加密后的代码无法正常运行。
要加密的源码不需要<?php 及?>开始与结束标记
可指定个人密钥。
可指定一个BLENC模块过期日期。 你可以决定BLENC 模块将工作到一个日期。之后,BLENC不会解密任何文件.
这些都可以在头文件 blenc_protect.h中设置,设置好后再编译BLENC.
用法:
http://cn2.php.net/manual/en/function.blenc-encrypt.php
安装用phpize安装 phpize ./configure make make install.
注意,如果安装后,访问php出现500错误,请试着打开 php.ini中的expose_php=On;…
原php 连接mongodb,mongodb异常退出再启动,php开始几次取不到数据的问题解决
php 连接mongodb,mongodb异常退出再启动,php开始几次取不到数据的问题解决
是由于mongodb的长连接导致的,长连接是默认的。
解决 办法 ,在php脚本 结束后 ,强制关闭mongodb连接
$mongo= new MongoClient("mongodb://whisky:13000/?replicaset=seta");
$mongo->close(true);
…
原php mongodb 操作类
<?php
/**
* php mongodb 操作类,主要用于存取图片
*
* @package MongoDriver
* @version $id$
* @copyright 2015
* @author Lenix
* @license PHP Version 3.0 {@link http://www.php.net/license/3_0.txt}
*/…
近期评论