mvccore/example-helloworld-portable

MvcCore - 示例 - 可移植包装的 Hello World - 基本应用程序打包演示。

v5.2.2 2023-05-17 14:31 UTC

This package is auto-updated.

Last update: 2024-09-13 00:13:14 UTC


README

Latest Stable Version License Packager Build PHP Version

Skeleton for MvcCore Hello World (mvccore/example-helloworld) 示例可移植打包/构建。

安装

# load hello world portable project skeleton
composer create-project mvccore/example-helloworld-portable ./my-helloworld-portable 

# go to portable project skeleton directory
cd my-helloworld-portable

# load hello world project
composer create-project mvccore/example-helloworld ./development

打包结果特性

  • 结果 完全可移植 - ./example-helloworld-portable/release/index.php
  • 当前应用已以严格包模式打包
  • 所有打包配置包含在 ./build/configs 目录中
  • 使用 打包库 (mvccore/packager) 打包,所有可能的打包方式
    • PHAR 文件
      • 包含整个开发目录内容的标准 PHAR 包
    • PHP 文件
      • 严格包
        • 所有内容包含在结果 index.php
        • 仅需要 .htaccessweb.config 来使用 mod_rewrite
      • 保留包
        • 结果 index.php 文件包含 PHP 文件、PHTML 模板,但不包含 CSS/JS/fonts 或图像
        • 所有包装的文件系统功能首先查找包内部,然后尝试从 HDD 读取数据
      • 保留 HDD
        • 结果 index.php 文件包含 PHP 文件、PHTML 模板,但不包含 CSS/JS/fonts 或图像
        • 所有包装的文件系统功能首先查找 HDD,然后尝试从包本身读取数据
      • 严格 HDD
        • 结果 index.php 文件仅包含 PHP 文件,但 PHTML 模板、所有 CSS/JS/fonts 和图像都在 HDD 上
        • 不包装任何 PHP 文件系统功能

构建

1. 准备应用程序

  • 前往 ./my-helloworld-portable/development
  • 清空 ./Var/Tmp/ 中的所有内容
  • ./index.php 中取消注释 ->SetCompiled(\MvcCore\Application::COMPILED_SFU)
  • 访问所有包含不同 JS/CSS 包组的应用程序路由,以生成结果应用的 ./Var/Tmp/ 内容
  • 运行构建过程

2. 运行构建过程

Linux

# go to project build dir
cd ./my-helloworld-portable/build
# run build process into single PHP file
sh make.sh

Windows

# go to project build dir
cd ./my-helloworld-portable/build
# run build process into single PHP file
make.cmd

浏览器

# visit script `make-php.php` in your project build directory:
https:///my-helloworld-portable/build/make-php.php
# now run your result in:
https:///my-helloworld-portable/release/