随笔分类 - PHP
摘要:PHPUnit是一个面向PHP程序员的测试框架,这是一个xUnit的体系结构的单元测试框架。 复杂的项目,通过单元测试能够快速排查bug,有效减少bug的产生。简单的项目,使用php自带的 、`print_r()`也能很方便的调试bug。 PHPUnit通过运行测试用例里的断言(例如判断返回结果不为
阅读全文
摘要:2019 11 29 更新: 建议windows下安装docker: 基于boot2docker部署Docker环境: https://www.cnblogs.com/52fhy/p/8413029.html 使用Docker快速搭建PHP开发环境: https://www.cnblogs.com/
阅读全文
摘要:本文以laravel5.0.22为例。 简介 Artisan 是 Laravel 内置的命令行接口。它提供了一些有用的命令协助您开发,它是由强大的 Symfony Console 组件所驱动。利用它,我们可以快速的新建Controller、Model等类。 如何使用 创建控制器 1)创建一个新的资源
阅读全文
摘要:Yar是什么 Yar是并行的RPC框架(Concurrent RPC framework), "Laruence" 开发。 安装 下载地址:http://pecl.php.net/package/yar windows版本下载对应的扩展放到ext目录并更新php.ini: Linux版本下载扩展的源
阅读全文
摘要:什么是钩子 大家想必听过插件,wordpress插件特别多,这个就是用钩子机制实现的。 当代码在运行的过程中,我们预先在运行的几个特殊点里执行一些特殊方法:例如在运行方法(例如Blog::add的add方法)之前记录输入参数、运行方法之后记录处理结果,这个 、`运行方法之后`就是简单的钩子(挂载点)
阅读全文
摘要:本文属于动手搭建PHP开发环境的一部分,更多点击链接查看。 本文以centos6为例。命令部分均省略sudo命令。 安装PHP 下载 http://cn2.php.net/distributions/php-5.6.22.tar.bz2 http://cn2.php.net/distribution
阅读全文
摘要:常用正则表达式 手机号码 邮箱 中文 GBK (GB2312/GB18030) x00 xff GBK双字节编码范围 x20 x7f ASCII xa1 xff 中文 gb2312 x80 xff 中文 gbk UTF 8 (Unicode) u4e00 u9fa5 (中文) 邮政编码 规则:六位数
阅读全文
摘要:简介 SPL是Standard PHP Library(PHP标准库)的缩写。 The Standard PHP Library (SPL) is a collection of interfaces and classes that are meant to solve common proble
阅读全文
摘要:PHP5 具有完整的反射API,添加对类、接口、函数、方法和扩展进行反向工程的能力。 反射是什么 反射(Reflection)是指在PHP运行状态中,扩展分析PHP程序,导出或提取出关于 、`方法 属性 参数`等的详细信息,包括注释。这种动态获取的信息以及动态调用对象的方法的功能称为反射API。反射
阅读全文
摘要:这六大原则任何面向对象的语言都应该遵守的,要想让你的代码易扩展高服用就尽量去满足这六大原则吧,不一定严格按照某种设计模式,但是如果你的代码符合这六大原则,那么你的代码就是好代码了,好的代码不一定是严格按照设计模式写的代码。 单一职责原则(SRP) Single Responsibility Prin
阅读全文
摘要:默认情况下,PHP 使用内置的文件会话保存管理器(files)来完成会话的保存。我们无需设置,PHP默认将session以文件的形式保存到服务器。 通过调用函数 即可手动开始一个会话。如果配置项 设置为1, 那么请求开始的时候,会话会自动开始。 PHP也提供了自定义会话保存管理器功能。有时候我们希望
阅读全文
摘要:h5项目中需要集成微信分享,以实现自定义标题、描述、图片等功能。结果遇到了很多坑。 准备工作 务必详细阅读微信JS-SDK说明文档 需要后端支持 强烈建议下载使用微信web开发者工具 按文档配置好公众号 JSSDK使用步骤 步骤一:绑定域名 先登录微信公众平台进入“公众号设置”的“功能设置”里填写“
阅读全文
摘要:之前我发了一篇博文 "PHP数据库操作:从MySQL原生API到PDO" ,向大家展示PHP是如何使用 、`MySQLi面向过程 MySQLi面向对象 PDO ORM`操作数据库。 什么是ORM呢?引用网友的话: 对象关系映射,O( ) 对象,在项目中就是实体,更加精确的来说就是数据 ,也可以说持久
阅读全文
摘要:本文将举详细例子向大家展示PHP是如何使用 、`MySQLi面向过程 MySQLi面向对象 PDO`操作MySQL数据库的。 为了后面的测试,先建立数据库表 。包含表名 ,`score`。 CREATE TABLE ( int(10) unsigned NOT NULL AUTO_INCREMENT
阅读全文
摘要:本文以YII 2.0.7为例。 应用结构 入口文件 文件位置: web/index.php 需要注意的是,如果想通过命令行方式(cli)访问应用,入口文件是根目录下的 。里面的内容实质是php代码,与 类似。Windows下请使用 。该文件在Linux下需要有执行权限,这样用户就能通过命令 来运行c
阅读全文
摘要:Yii 是一个高性能的,适用于开发 WEB2.0 应用的 PHP 框架。
Yii 自带了丰富的功能 ,包括 MVC,DAO/ActiveRecord,I18N/L10N,缓存,身份验证和基于角色的访问控制,脚手架,测试等,可显著缩短开发时间。
阅读全文
摘要:Trait是自 PHP 5.4.0 起添加的一个新特性,是 PHP 多重继承的一种解决方案。例如,需要同时继承两个 Abstract Class, 这将会是件很麻烦的事情,Trait 就是为了解决这个问题。 下面是一个例子,类 同时继承了 、`Test2`: 一些特性 1、优先级:当前类 trait
阅读全文
摘要:基本操作 新增 使用模型的 Create 方法 删除 更新 查找 更多: //条件类: where('id', ' ', '0') where('id', ' =', '0') where('id', 'Eloquent ORM Laravel 中文文档 http://laravel china.o
阅读全文
摘要:本文以laravel5.0.22为例。 本节以新建一个简单的博客作为实例。 准备工作 数据库配置 .env文件(也可以直接修改config/database.php) 数据库表: CREATE TABLE ( int(10) unsigned NOT NULL AUTO_INCREMENT, int
阅读全文
摘要:本文以laravel5.0.22为例。 生产环境建议使用 "laravel5.1" 版本,因为该版本是长期支持版本。5.1文档更详细:http://laravel china.org/docs/5.1。 环境需求 Laravel5.0 框架有一些系统上的需求: PHP 版本 = 5.4 Mcrypt
阅读全文