开发文档管理利器Dash与Zeal
Dash 是 Mac 下非常好用的文档查询工具,可在一个软件中查询几十种语言、软件、框架... 的使用文档,且还有各种流行的编辑器和 IDE 插件,真是方便至极。实乃众猿在 OS X 环境中居家旅行必备神器。
Windows 和 Linux 用户可下载 Zeal 使用本文档,
传送门:
Dash 是 Mac 下非常好用的文档查询工具,可在一个软件中查询几十种语言、软件、框架... 的使用文档,且还有各种流行的编辑器和 IDE 插件,真是方便至极。实乃众猿在 OS X 环境中居家旅行必备神器。
Windows 和 Linux 用户可下载 Zeal 使用本文档,
传送门:
Laravel 5 已于不久前正式发布,新版目录结构发生很多变化,也移除一些4中存在的包,比如 HTML与Form。
本文来自 https://phphub.org/topics/249 。
Laravel 5 因为采用了另一套不同的架构, 而把 HTML 和 Form 类从核心里面移除.
如果还想继续使用这两个类的话, 可以使用以下方法:
编辑 composer.json 文件, require 节点下增加:
"illuminate/html": "~5.0"然后执行:
composer install修改 config/app.php 文件, 在 providers 数组里面添加:
'Illuminate\Html\HtmlServiceProvider' 在使用 Laravel Eloquent 模型时,我们可能要判断取出的结果集是否为空,但我们发现直接使用 is_null 或 empty 是无法判段它结果集是否为空的。
var_dump 之后我们很容易发现,即使取到的空结果集, Eloquent 仍然会返回 Illuminate\Database\Eloquent\Collection 对象实例。
其实,Eloquent 已经给我们封装几个判断方法。
$result = Model::where(...)->get();
//不为空则
if ($result->first()) { }
if (!$result->isEmpty()) { }
if ($result->count()) { }参考网站:http://stackoverflow.com/questions/20563166/eloquent-collection-counting-and-detect-empty
最近在使用 Laravel 单元测试 phpunit ,发现在命令行下,打印某些网页字符串会显示乱码,经搜索后,知晓这是因为命令行代码页与网页编码不一致造成的。
Windows 简体中文系统,默认命令行代码页为936(简体中文),而网页编码一般为UTF-8(65001)。
可以尝试在命令行下输入以下命令,切换代码页:
rem utf-8
chcp 65001如需切换回简体中文,请输入
rem 简体中文
chcp 936 为了便于后期维护,现对使用
Laravel 4.2.x的项目做出开发与命名上的约束。本文只对某些重点做出具体约束,可能存在遗漏的地方,欢迎补充说明。
Laravel 使用 Composer 进行源码管理,自动加载推荐遵循 PSR-4 规范,可以到此查阅相关文档:
参照 Laravel 模型相关内容,我们可以看出,Laravel 倾向于使用复数名词作为表名,Laravel 框架自带了一个 User 模型操作 users 用户表。
推荐使用三个小写字母以上的字符串作为数据库表前缀,如芽丝内容管理框架就使用yascmf_作为表前缀。
数据库表默认使用utf8_unicode_ci作为排序规则。
数据表名与表字段推荐使用全小写英文字母,单词之间采用下划线 (_) 作为分隔符;数据库字段应避免使用 MySQL 关键字(如desc 、 null 、 count 与 order 等 );数据库表及字段在设计时应添加与保留注释(即 COMMENT )内容。
使用Laravel ORM时,可能还需要添加额外的字段,如自动时间戳记录的字段 created_at 、 updated_at 与 deleted_at 等。
在 SQL 语句的编写中,凡是 SQL 语句的关键字一律大写,如:SELECT、ORDER BY、 GROUP BY、 FROM、 WHERE、 UPDATE、 INSERT INTO、 SET、 BEGIN、 END 等。
遵守第三范式 3NF 标准的规定:
A.表内的每一个值都只能被表达一次。
B.表内的每一行都应该被唯一的标识(有唯一键)。
C.表内不应该存储依赖于其他键的非键信息。
主键(包括联合主键)与索引名应表义清晰明确,唯一索引建议带上_unique缀名,以与其它普通索引区别。