PHP内核详解-概括
本文章是PHP内核详解系列的第一篇:概括。
该系列文章旨在介绍PHP内核,为PHP内核学习者做一个大概的介绍,主要是PHP的执行过程。
在这篇文章中,你将对PHP程序执行有一个大概的了解。在后面的系列文章中,将会详细介绍各个环节的细节。
继续阅读 »
PHP内核详解-变量
本文章是PHP内核详解系列的第二篇:变量。
介绍PHP源码中变量的各种类型及其实现。
前提
PHP源码版本:7.1.6
数据的存储-变量
PHP中的变量,在源码中都定义在一个文件中:Zend/zend_types.h。通过阅读该文件,可以知道,PHP7中的变量类型有20种,这里只介绍我们常规理解并应用的几种变量。
继续阅读 »
在安装Memcache的时候需要在php.ini添加Memcache扩展,搜了php所在目录居然没有php.ini
$ find /usr/local/php/ -name php.ini
继续搜整个服务器目录
继续阅读 »
重新编译PHP安装更多扩展功能
如果已经编译安装过php,但是在使用过程中发现当初编译的时候有一些功能没有开启,而且在php.ini文件中也无法启动。那么唯一的办法就是重新编译安装PHP了。
为了获得新的功能,我们首先关注的是,不能把之前有的功能不小心给关闭了,所以需要找到之前的编译参数。
继续阅读 »
PHP是非常流行的Web服务端语言,Ajax是Web前端异步加载的技术。刚刚学习PHP,发现PHP真是强大,对Ajax或RESTFul的支持非常好,代码写起来也非常简单。今天分享一个个人学习的测试示例,前端使用Ajax向服务端发送请求,服务端使用PHP处理请求,并返回响应信息。接口规范遵循RESTFul。
前端
为简化Ajax操作,引入JQuery来发送Ajax请求。请求包含查询字符串,HTTP头及表单数据。
```html test.html
Document
function my_post() {
var div = $('#result');
$.ajax({
继续阅读 »
从PHP的5.4.0版本开始,PHP提供了一种全新的代码复用的概念,那就是Trait。Trait其字面意思是"特性"、"特点",我们可以理解为,使用Trait关键字,可以为PHP中的类添加新的特性。
熟悉面向对象的都知道,软件开发中常用的代码复用有继承和多态两种方式。在PHP中,只能实现单继承。而Trait则避免了这点。下面通过简单的额例子来进行对比说明。
继续阅读 »
New Generation
时至今日(2016-01-18), PHP已经发展到了PHP 7.0.2,然而大量的资料和代码依旧停留在上个时代,甚至是上上个时代。
如果你没有尝试过新生活,跟着我的这篇博文来试试新时代的PHP吧~
继续阅读 »
PHP内核HashTable
介绍
PHP Hashtable 实现
介绍
这篇blog主要介绍 php5.6 hashtable 和 php7 hashtable
的内部实现和区别
继续阅读 »
PHP 源码阅读array_combine()
PHP 源码阅读之array_combine()
array_combine() 在 ext/standard/array.c 中
array_combine(array $keys , array $values) — 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值
继续阅读 »
在记MAC OS X 编译安装PHP7.0.16 中遇到的异常情况一文中,介绍了编译PHP7源码安装PHP的方式,其中的第四个步骤,命令如下:
继续阅读 »