需求很简单,就是在linux的终端中输入一个字符串(可以是以命令行参数形式,也可以是通过交互式输入),然后就会输出对应的二维码。首先PHP已经有现成的QrCode类库phpqrcode,可以将一个字符串转成PNG格式的图片,但是PNG图片是没法在终端里展示的,于是仔细翻看文档和demo,发现该类库也可以输出0和1组成的矩阵(实际上该方法返回的是一个PHP的二维数组)。已经有了0和1的矩阵,接下来要做的就是输出黑白色块,为了操作方便,偶引入了symfony项目中的console组件。通过console组件可以非常方便的创建一个Cli命令,而且内置了大量输入和输出方法。