本节书摘来自华章出版社《Hack与HHVM权威指南》一书中的第1章,第1.2节,作者 Owen Yamauchi,更多章节内容可以访问“华章计算机”公众号查看。
1.2 设置类型检查器
在正式学习Hack类型注解的语法以及语义之前,我们将首先学习如何设置类型检查器。
你需要做的第一件事情就是建立一个.hhconfig文件,这个文件掌控着整个项目范围内的配置项目,它用来标记你的代码库的顶级目录,使得类型检查器能够知晓在它的分析过程中要包含哪些文件。
目前来说,我们还不需要什么配置,.hhconfig文件还是个空文件。所以请译注1导航到你的项目的顶级目录,然后输入下面的代码:
$ touch .hhconfig
$ hh_client
执行hh_client命令将首先检测是否存在hh_server进程,如果没有这个进程,客户端会主动执行一个。所以你不必自己去执行hh_server进程,服务端会去查找.hhconfig文件并且主动去分析.hhconfig文件同级及子目录下面的所有Hack文件。
一个标准的Hack文件的内容必须以<?hh注1开头,这点和 PHP的“开始标记”语法是一致的。在<?hh标记之后(可能会有辅助的模式说明,请参见1.4.1节的“类型检查器模式”的内容),剩下的就是Hack代码的其他内容了。和PHP有所不同的是,结束符?>在Hack语言中是不生效的,所以不能在Hack语言中使用PHP“模板化语言(templating-language)”的语法了。
文件的扩展名无关紧要,按照约定命名为.hh文件或者.php文件都是可以的。
一旦类型检查服务端被启动,如果在你的项目中没有Hack文件(也就是说,你的所有代码都包裹在<?php标记之中而不是<?hh标记之中),运行hh_client将会简单地输出“No Errors!”这是因为类型检查器仅仅查看Hack文件,它对PHP文件不会做任何事情。
时间: 2024-09-20 20:35:09