PHP

高性能PHP框架

admin 提交于 周三, 11/18/2015 - 11:32

以前我不明白为什么有这么多PHP框架,了解越多越明白其中的原因。有两个框架,一个叫Yaf,是中国人写的,直接成为php.net里的一个扩展。另一个叫Phalcon。它们都是用C语言写的,所以明显要快于其它框架。但是它们有难以部署和调试内核的缺点。

下面这个网址有个性能测试报告,Yaf的性能比Laravel要好10倍以上:

http://www.techempower.com/benchmarks/#section=data-r9&hw=ec2&test=json&l=3y8&c=1

标签

为什么网站URL对应的处理文件是完全不同目录里文件?

admin 提交于 周三, 11/04/2015 - 22:10

这个东西有个相关的名词叫“路由”。这里是ThinkPHP的相关文档

这是怎样实现的呢?

一个PHP后台开发框架,一般都有一个统一的入口文件:index.php,这个文件会引用很多其它模块文件,加载很多配置和功能。路由是框架的一个基本组成部分,通过路由,框架会把一个URL映射到对应的Controller(如果这个框架是MVC架构的话)。这个Controller和一个独立的PHP文件是不同的,它不能独立运行,它依赖于框架事先运行了一大堆代码。Web服务器(Apache、Nginx等)可以做一定的配置自动识别出URL中哪里省略了index.php,而剩下的部分则是index.php的参数,index.php根据参数调用对应的Controller代码处理。

标签

微信服务号开发指南(PHP)

admin 提交于 周一, 11/02/2015 - 14:48

微信的订阅号和服务号开发差别不大,本文同样适用于订阅号的开发。

1. 申请服务号

到微信公众平台申请服务号:https://mp.weixin.qq.com/

微信的权限不时会调整,网上一些文章的描述会过时,最好是登录服务号的后台,查看有哪些权限。很多高级的权限都需要认证的服务号的,认证需要提供公司营业执照等,并每年缴纳一笔费用(印象中是300元/年)。

2. 开发者中心

登录公众平台,做好基本设置(我也不记得有什么东西需要设置了),然后就点击公众平台左下角的“开发者中心”链接查看和设置权限等信息。

微信开发者中心截图

标签

7个不使用ThinkPHP的理由

admin 提交于 周一, 11/02/2015 - 11:18

1. 没有多环境的配置机制

开发网站通常需要在本地配置、然后放到测试服务器、然后放到生产环境。那么我们需要有3套的配置文件(数据库的账号密码)。但是ThinkPHP不像Laravel等框架可以把多个环境的配置区分开来,并且ThinkPHP的应用配置文件放在Application/Common/Conf/config.php,也就是说,如果我们想用rsync命令把所有代码同步到服务器,会把服务器的配置覆盖。这一点很不方便。

2. 没有内置发送邮件的支持

需要自己安装扩展,缺乏这个基本功能不太方便。

3. 没有内置用户管理、权限控制的支持

这是每个网站都需要有的功能,连这个也不支持很不方便。对于新手来说,可能还不懂得怎样构建权限控制的模型,让系统很容易出安全漏洞。在网上也很难找到一个质量高的完整例子。

4. 国内的开源PHP框架

这个其实不是什么缺点,但是会被部分人鄙视。这种偏见有其合理性的一面,因为ThinkPHP框架本身以及社区里使用ThinkPHP程序员的平均水平要低于国外的PHP框架,长期混在这一社区水平难有提高。

标签

PHP开发环境搭建

admin 提交于 周四, 10/29/2015 - 15:59

1. 硬件

Mac是最理想的Web开发操作系统,除了看起来帅一些之外,主要原因是很多东西接近Linux,可以使用rsync命令把文件同步到服务器,有符号链接(这是Windows缺失的一个重要特性)。不过要注意的是Mac文件系统是不区分大小写的。同时还是要装个Windows虚拟机测IE浏览器的显示效果。

用Windows也没有问题,还可以省去装虚拟机的麻烦。

2. 软件

Web服务器就用XAMPP吧,所有操作系统平台都支持了。Windows平台也可使用注明的WAMP。

编辑器的话,个人喜欢开源的NetBeans,比较出名的、收费的编辑器有PhpStorm。

标签

Slim PHP框架

admin 提交于 周三, 10/28/2015 - 13:53

Slim是一个微框架。

有一套和Lavarel很相似的路由机制。

有一个很详细的教程,详细到把基础request变量都说得很详细,我会觉得这么微的框架还要谈及这么琐碎的功能,那它本身可能真没什么功能。不过理解这些功能对于PHP程序员打好基础很有好处。比如说,文档会提及ETag,有助于程序员更好地理解缓存知识。

有中间件机制,有Hook机制。

没有显示地描述MVC的设计,没有数据库ORM模型。

PHP developers love Slim for developing Restful APIs and services, thanks to Josh Lockhart for creating this tiny beast. The best thing about starting with a micro framework like slim is that you don’t need to spend time learning it. The code base is so small that you can run through the entire code in a late night session.

标签

7个使用ThinkPHP的理由

admin 提交于 周一, 10/26/2015 - 16:04

1. 最基本的PHP框架

如果你从来没有使用过PHP框架,那么你至少应该选择一个PHP框架,这比完全自己写代码要好得多,至少有很多常见的问题框架的文档都会提及。而PHP框架中,ThinkPHP会是理想和基础的选择之一。我本人曾尝试过国外多用的Laravel,作为初学者,并没有发现Laravel比ThinkPHP有什么优越之处,反而缺点多多。

2. 中国人做的开源框架

符合国内大部分PHP开发者使用习惯,中文文档及社区完善。很多人懂,意味着容易招人。容易上手。而其它所有PHP框架基本上都是国外的(除了鸟哥惠新宸的Yaf),需要英文阅读能力过关,偶尔还要翻墙。

标签