BeWithYou

胡搞的技术博客

PHP

实现GBK和UTF8的按字节截取


今天遇到需要按字节截取GBK和UTF8字符串的需求。记录一下代码片段。 function substrMB($str, $minLen, $maxLen, $charset = "utf8", $append = false, $default = "") { $length = strlen($str); if ($length <= $minLen) { $str = $default; } elseif ($length <= $maxLen) { //DO NOTHING } else { $strLast = array(); $i = ……
PHP

PHP内核中zval的拷贝


最近在学习PHP扩展开发,发现参考资料里有一些问题。案例代码无法按照预期的运行,经过一系列debug和查阅资料,发现问题在于zval的传递。 发现问题 参考《PHP核心技术与最佳扩展》,按照书中的代码,编写的双向链表扩展。使用如下测试代码测试时,却不能准确地遍历链表。 $list = list_create(); for($i=0;$i<10;$i++){ list_add_hea……
生活/吐槽

评论系统由多说迁移到畅言


收到邮件,多说将于6月份停止服务。有点惋惜,毕竟还蛮好用的。 只能换个评论系统了。 本来已经换成了Disqus,刚好hexo版的博客也直接支持Disqus。谁知道Disqus在一般网络情况下是被墙的。也没其他的选择,只能换成畅言了。毕竟也是搜狐老东家旗下的产品。 旧评论导入 由多说将数据导出成json文件之后,可以无缝导入到畅言。这点比Disqus好很多,不用网上找脚本来……
web前端/Javascript

zan框架阅读笔记


最近在看有赞的zan框架,并没打算实际应用,只是想学习一下他的设计思路。 网上文档写的很不详细,连sql在框架里如何使用都没有说。好在框架代码条理还挺清晰,我们只需要初始化一个demo项目,再用ide一步一步跟进去读源码即可。 这里只关注HTTP服务的部分,简单看一下框架运行的主要流程。细枝末节部分就不去深究啦。 HTTP程序入口 bin/httpd.php 创建Appl……
PHP

PHP中的协程(二)


上篇文章里提到PHP中协程的引入,可以使PHP编程有新的玩法,不在遵循原本顺序执行的思路,从而应对大访问量和并发操作。 有赞的zan framework就是基于PHP协程的,提供最简单的方式开发面向C10K+的高并发HTTP服务或SOA服务。我并没有深入的学习这个框架,这里只打算把关于协程的部分抽出来学习一下。 zan框架高并发设计思路 粗看之下(不一定对哦),框……
PHP

PHP中的协程(一)


之前学习Lua的时候第一次接触到了协程(coroutine)的概念。而PHP5.5版本中也加入了协程的概念,从此PHP编程又有了新的思路和玩法。这里学习一下PHP中协程的相关概念的使用方法。 分成上下两篇文章吧,这篇主要讲一下基础概念。 协程是什么? 在以前的Lua学习笔记三中可以看到,协程与多线程的比较,有自己的堆栈、……
  • 上一页
  • 下一页
回到顶部