个人喜好经常写些命令行工具,laravel 很方便,但脚手架工程就 45M左右,使用 composer install --no-dev 也要24M左右,很笨重。

也尝试过 symfony 的 composer create-project symfony/skeleton ,大概15M,且有冗余,还不支持 php artisan make:command 这些脚手架命令。

本人的 composer 镜像 就是自己基于 symfony console 定制的,仅仅使用了 symfony/console 这一个包。最近就想着是不是可以定制出一款轻量的 initial project,还能利用 laravel 的方便性,于是翻着翻着,就找到了 laravel zero,感觉正是我想要的。

laravel zero 的安装

1、安装命令:

composer create-project laravel-zero/laravel-zero zenconsole

2、Zcomposer 镜像提升安装速度

建议使用我的 Zcomposer 镜像,以提升安装速度,镜像配置命令:

composer config -g repo.packagist composer https://packagist.laravel-china.org

已经在使用 Zcomposer镜像 的,可以忽略,如果不清楚的,可以通过下面命令查看下:

# url 中带有 laravel-china 字样
composer config -l

3、不需要dev附加包的,可以继续精简,可以从24M精简到12M

composer create-project laravel-zero/laravel-zero zenconsole --no-dev

app/Commands/InspiringCommand.php 是例子,不需要可以删除。

laravel zero 的使用

1、创建命令

php zenconsole make:command --command command:name

2、命令打包

# 打包为 phar ( composer 命令就是个 phar ),从12M 变为 3M,
php zenconsole app:build

3、其他

# 安装 laravel 的其他 component,会弹出选择窗,选择即可
php zenconsole app:install

# 修改命令名字,比如 zenconsole 修改为 othername
php zenconsole app:rename othername

如果你喜欢用 laravel,且经常写些小命令,不仿体验下。

有关 PHP 和 js 浮点运算的坑

javascript 0.1 + 0.2 为啥不等于 0.3 ? (正确结果:0.30000000000000004) 0.8 * 7 为啥不等于 5.6 ? (正确结果:5.6000000000000005) PHP var_dump(intv...

阅读全文

彻底搞懂 PHP 变量结构体,多数文章观点不准确

PHP5 中的 zval // 1. zval typedef struct _zval_struct { zvalue_value value; zend_uint refcount__gc; zend_uchar type; zend_uchar is...

阅读全文

React Native 如何区分系统平台,动态加载组件

Android 平台下, React Native WebView 的官方组件,无法上传文件,<input type = "file"> 不能打开文件对话框,需要自己监听事件去扩展。 幸好这里有...

阅读全文

欢迎留言