weixiangmeng521 / packer

使用这个基于 PHP-cli 的开发工具,自动前缀兼容的 CSS、JavaScript 和图像可以无缝集成到 HTML 电子邮件中。 轻松简化您的 HTML 电子邮件开发。 主题

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Packer - 轻量级 PHP Web 前端打包工具

Packer 是一个受到 Vue CLI 启发的轻量级 PHP Web 前端开发打包工具。它专为小型模板页面开发设计,能够将 HTML、CSS、JS 和图片合并为一个 HTML 文件。此外,它对 CSS 进行了兼容处理,并删除了一些不必要的文件依赖,以提高页面加载性能。

功能与使用场景

  • 打包合并: 将所有文件打包成一个文件,减少连接和请求次数,提高请求速度。
  • 模版语法支持: 支持 PHP 模版语法,可使用 {{ $key }} 在模版中输出 PHP 变量。

环境依赖

  • PHP 版本不低于 7,且支持 pcntl 模块。
  • Node.js 版本越高越好,用于使用 postcss 对 CSS 进行兼容处理。

快速开始

下载 Node.js 依赖:

npm i

修改 index.php:

  • 在 index.php 中修改 $path 变量,指定模版路径用于预览:
$path = __DIR__ . DIRECTORY_SEPARATOR . "web" . DIRECTORY_SEPARATOR . "index.html";
$liveServer = new LiveServer($path);

修改 packer 中的 $input 变量:

  • 在 packer 中修改 $input 变量,指定需要打包的文件路径:
$input = __DIR__ . DIRECTORY_SEPARATOR . "web" . DIRECTORY_SEPARATOR . "index.html";
$w = new Writer($input);
$w->compile();

启动开发模式:

php packer dev
  • 在工程根目录下启动 dev 模式,实时预览。
php packer build
  • 通过以下命令打包文件,可以在根目录的dist文件夹下,看到打包后的结果。对于html文件内的引用,暂时不支持外部连接。

模版引擎的使用

编辑 mock/Mock.php 设置需要渲染的变量:

return [
    "index.html" => [
        "amount"      => "50元",
        "pay_account" => "10元",
    ],
];

如:我在index.html里面会渲染amount和pay_account两个数据。

开发规范

Web 的依赖最好只在工程目录之下,示例结构:

|--index.html
|--css
|-----main.css
|--js
|-----main.js
|--img
|-----1.jpg

贡献

欢迎贡献代码、报告问题或提供改进建议。我们相信您的参与将使 Packer 变得更好!

About

使用这个基于 PHP-cli 的开发工具,自动前缀兼容的 CSS、JavaScript 和图像可以无缝集成到 HTML 电子邮件中。 轻松简化您的 HTML 电子邮件开发。 主题

License:MIT License


Languages

Language:PHP 98.0%Language:CSS 1.2%Language:HTML 0.8%Language:JavaScript 0.0%