Files
static-php-cli/zh/guide/index.html
2026-06-16 05:58:18 +00:00

25 lines
32 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="zh" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>构建指南 | StaticPHP</title>
<meta name="description" content="A powerful tool designed for building portable executables including PHP, extensions, and more.">
<meta name="generator" content="VitePress v2.0.0-alpha.12">
<link rel="preload stylesheet" href="/assets/style.DtFsVR9B.css" as="style">
<link rel="preload stylesheet" href="/vp-icons.css" as="style">
<script type="module" src="/assets/app.DFjSYdj3.js"></script>
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
<link rel="modulepreload" href="/assets/chunks/theme.CtIPYXhG.js">
<link rel="modulepreload" href="/assets/chunks/framework.C2AwuPrQ.js">
<link rel="modulepreload" href="/assets/zh_guide_index.md.B1jsb7XJ.lean.js">
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
</head>
<body>
<div id="app"><div class="Layout" data-v-1df9f90f><!--[--><!--]--><!--[--><span tabindex="-1" data-v-0b0ada53></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-0b0ada53>Skip to content</a><!--]--><!----><header class="VPNav" data-v-1df9f90f data-v-9f75dce3><div class="VPNavBar" data-v-9f75dce3 data-v-2a96a3d0><div class="wrapper" data-v-2a96a3d0><div class="container" data-v-2a96a3d0><div class="title" data-v-2a96a3d0><div class="VPNavBarTitle has-sidebar" data-v-2a96a3d0 data-v-1e38c6bc><a class="title" href="/zh/" data-v-1e38c6bc><!--[--><!--]--><!--[--><img class="VPImage logo" src="/images/static-php_nobg.png" alt data-v-8426fc1a><!--]--><span data-v-1e38c6bc>StaticPHP</span><!--[--><!--]--></a></div></div><div class="content" data-v-2a96a3d0><div class="content-body" data-v-2a96a3d0><!--[--><!--]--><div class="VPNavBarSearch search" data-v-2a96a3d0><!--[--><!----><div id="docsearch"><button type="button" aria-label="Search" aria-keyshortcuts="/ control+k meta+k" class="DocSearch DocSearch-Button"><span class="DocSearch-Button-Container"><span class="vpi-search DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key"></kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-2a96a3d0 data-v-39714824><span id="main-nav-aria-label" class="visually-hidden" data-v-39714824> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/zh/guide/" tabindex="0" data-v-39714824 data-v-e56f3d57><!--[--><span data-v-e56f3d57>构建指南</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/zh/develop/" tabindex="0" data-v-39714824 data-v-e56f3d57><!--[--><span data-v-e56f3d57>开发者</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/zh/contributing/" tabindex="0" data-v-39714824 data-v-e56f3d57><!--[--><span data-v-e56f3d57>贡献</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/zh/faq/" tabindex="0" data-v-39714824 data-v-e56f3d57><!--[--><span data-v-e56f3d57>FAQ</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-39714824 data-v-42cb505d><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-42cb505d><span class="text" data-v-42cb505d><!----><span data-v-42cb505d>v3 (alpha)</span><span class="vpi-chevron-down text-icon" data-v-42cb505d></span></span></button><div class="menu" data-v-42cb505d><div class="VPMenu" data-v-42cb505d data-v-25a6cce8><div class="items" data-v-25a6cce8><!--[--><!--[--><div class="VPMenuLink" data-v-25a6cce8 data-v-cd834e02><a class="VPLink link" href="/zh/" data-v-cd834e02><!--[--><span data-v-cd834e02>v3 (alpha)</span><!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-25a6cce8 data-v-cd834e02><a class="VPLink link vp-external-link-icon" href="https://static-php.github.io/v2-docs/" target="_blank" rel="noreferrer" data-v-cd834e02><!--[--><span data-v-cd834e02>v2</span><!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--]--></nav><div class="VPFlyout VPNavBarTranslations translations" data-v-2a96a3d0 data-v-88af2de4 data-v-42cb505d><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Change language" data-v-42cb505d><span class="text" data-v-42cb505d><span class="vpi-languages option-icon" data-v-42cb505d></span><!----><span class="vpi-chevron-down text-icon" data-v-42cb505d></span></span></button><div class="menu" data-v-42cb505d><div class="VPMenu" data-v-42cb505d data-v-25a6cce8><!----><!--[--><!--[--><div class="items" data-v-88af2de4><p class="title" data-v-88af2de4>简体中文</p><!--[--><div class="VPMenuLink" data-v-88af2de4 data-v-cd834e02><a class="VPLink link" href="/en/guide/" data-v-cd834e02><!--[--><span data-v-cd834e02>English</span><!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-2a96a3d0 data-v-6c893767><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-6c893767 data-v-5337faa4 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-5337faa4></span><span class="vpi-moon moon" data-v-5337faa4></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-2a96a3d0 data-v-0394ad82 data-v-d07f11e6><!--[--><a class="VPSocialLink no-icon" href="https://github.com/crazywhalecc/static-php-cli" aria-label="github" target="_blank" rel="me noopener" data-v-d07f11e6 data-v-591a6b30><span class="vpi-social-github"></span></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-2a96a3d0 data-v-bb2aa2f0 data-v-42cb505d><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-42cb505d><span class="vpi-more-horizontal icon" data-v-42cb505d></span></button><div class="menu" data-v-42cb505d><div class="VPMenu" data-v-42cb505d data-v-25a6cce8><!----><!--[--><!--[--><div class="group translations" data-v-bb2aa2f0><p class="trans-title" data-v-bb2aa2f0>简体中文</p><!--[--><div class="VPMenuLink" data-v-bb2aa2f0 data-v-cd834e02><a class="VPLink link" href="/en/guide/" data-v-cd834e02><!--[--><span data-v-cd834e02>English</span><!--]--></a></div><!--]--></div><div class="group" data-v-bb2aa2f0><div class="item appearance" data-v-bb2aa2f0><p class="label" data-v-bb2aa2f0>Appearance</p><div class="appearance-action" data-v-bb2aa2f0><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-bb2aa2f0 data-v-5337faa4 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-5337faa4></span><span class="vpi-moon moon" data-v-5337faa4></span><!--]--></span></span></button></div></div></div><div class="group" data-v-bb2aa2f0><div class="item social-links" data-v-bb2aa2f0><div class="VPSocialLinks social-links-list" data-v-bb2aa2f0 data-v-d07f11e6><!--[--><a class="VPSocialLink no-icon" href="https://github.com/crazywhalecc/static-php-cli" aria-label="github" target="_blank" rel="me noopener" data-v-d07f11e6 data-v-591a6b30><span class="vpi-social-github"></span></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-2a96a3d0 data-v-e5dd9c1c><span class="container" data-v-e5dd9c1c><span class="top" data-v-e5dd9c1c></span><span class="middle" data-v-e5dd9c1c></span><span class="bottom" data-v-e5dd9c1c></span></span></button></div></div></div></div><div class="divider" data-v-2a96a3d0><div class="divider-line" data-v-2a96a3d0></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-1df9f90f data-v-8acdfeb5><div class="container" data-v-8acdfeb5><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-8acdfeb5><span class="vpi-align-left menu-icon" data-v-8acdfeb5></span><span class="menu-text" data-v-8acdfeb5>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-8acdfeb5 data-v-0bf0e06f><button data-v-0bf0e06f>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-1df9f90f data-v-e7c6e512><div class="curtain" data-v-e7c6e512></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-e7c6e512><span class="visually-hidden" id="sidebar-aria-label" data-v-e7c6e512> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-8d50c081><section class="VPSidebarItem level-0 has-active" data-v-8d50c081 data-v-d81de50c><div class="item" role="button" tabindex="0" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><h2 class="text" data-v-d81de50c>快速上手</h2><!----></div><div class="items" data-v-d81de50c><!--[--><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>概览</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/installation.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>安装</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/first-build.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>第一次构建</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/sapi-reference.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>PHP SAPI 构建参考</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/cli-reference.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>命令行参考</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/migrate-from-v2.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>从 v2 迁移</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-8d50c081><section class="VPSidebarItem level-0" data-v-8d50c081 data-v-d81de50c><div class="item" role="button" tabindex="0" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><h2 class="text" data-v-d81de50c>扩展</h2><!----></div><div class="items" data-v-d81de50c><!--[--><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/extensions.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>支持的扩展列表</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/extension-notes.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>扩展注意事项</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/cli-generator.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>命令生成器</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-8d50c081><section class="VPSidebarItem level-0" data-v-8d50c081 data-v-d81de50c><div class="item" role="button" tabindex="0" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><h2 class="text" data-v-d81de50c>参考</h2><!----></div><div class="items" data-v-d81de50c><!--[--><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/env-vars.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>环境变量</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/deps-map.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>依赖关系图</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-d81de50c data-v-d81de50c><div class="item" data-v-d81de50c><div class="indicator" data-v-d81de50c></div><a class="VPLink link link" href="/zh/guide/troubleshooting.html" data-v-d81de50c><!--[--><p class="text" data-v-d81de50c>故障排除</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-1df9f90f data-v-aff0b8d7><div class="VPDoc has-sidebar has-aside" data-v-aff0b8d7 data-v-7011f0d8><!--[--><!--]--><div class="container" data-v-7011f0d8><div class="aside" data-v-7011f0d8><div class="aside-curtain" data-v-7011f0d8></div><div class="aside-container" data-v-7011f0d8><div class="aside-content" data-v-7011f0d8><div class="VPDocAside" data-v-7011f0d8 data-v-3f215769><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-3f215769 data-v-60d5052e><div class="content" data-v-60d5052e><div class="outline-marker" data-v-60d5052e></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-60d5052e>On this page</div><ul class="VPDocOutlineItem root" data-v-60d5052e data-v-2d0bdf9b><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-3f215769></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-7011f0d8><div class="content-container" data-v-7011f0d8><!--[--><!--]--><main class="main" data-v-7011f0d8><div style="position:relative;" class="vp-doc _zh_guide_ external-link-icon-enabled" data-v-7011f0d8><div><h1 id="构建指南" tabindex="-1">构建指南 <a class="header-anchor" href="#构建指南" aria-label="Permalink to “构建指南”"></a></h1><div class="warning custom-block"><p class="custom-block-title custom-block-title-default">WARNING</p><p>你正在阅读 StaticPHP v3 版本的文档v2 版本将在 v3 稳定发布后废弃。v3 版本目前仍处于 alpha 阶段, 你可以在 <a href="https://static-php.github.io/v2-docs/" target="_blank" rel="noreferrer">这里</a> 查看 v2 文档。</p></div><h2 id="staticphp-是什么" tabindex="-1">StaticPHP 是什么 <a class="header-anchor" href="#staticphp-是什么" aria-label="Permalink to “StaticPHP 是什么”"></a></h2><p>StaticPHP 是一个构建工具,能够将 PHP 解释器与你所需的扩展一起编译成一个独立的二进制文件,无需在目标系统上预先安装 PHP 或任何依赖库。 构建产物可以直接分发和运行,适用于 Linux、macOS 和 Windows 平台。</p><p>StaticPHP 的能力不止于 PHP。依托同一套构建基础设施它还可以将 <code>curl</code><code>pkg-config</code><code>htop</code> 等常用命令行工具编译为独立的静态二进制,无需在目标机器上安装任何依赖即可直接运行。后续还会持续扩充内置支持的工具集。</p><h2 id="为什么要构建静态-php" tabindex="-1">为什么要构建静态 PHP <a class="header-anchor" href="#为什么要构建静态-php" aria-label="Permalink to “为什么要构建静态 PHP”"></a></h2><p>普通 PHP 安装依赖系统环境:你需要先安装 PHP、再装扩展、再处理各个发行版之间的差异。 将 PHP 构建为静态二进制之后,这些问题都不再存在——你得到的是一个单文件可执行程序,在任何相同架构的系统上开箱即用。</p><p>典型使用场景:</p><ul><li><strong>部署命令行工具</strong>:把 PHP 工具(如 Composer、PHPStan、自研 CLI打包后直接分发用户无需安装 PHP。</li><li><strong>容器和嵌入式环境</strong>:用最小体积的静态 PHP 替代臃肿的基础镜像。</li><li><strong>服务端应用</strong>:构建包含 FPM 或 FrankenPHP SAPI 的静态二进制,部署更简单,不依赖宿主机环境。</li></ul><h2 id="phpmicro-把-php-和你的代码打包成一个文件" tabindex="-1">phpmicro把 PHP 和你的代码打包成一个文件 <a class="header-anchor" href="#phpmicro-把-php-和你的代码打包成一个文件" aria-label="Permalink to “phpmicro把 PHP 和你的代码打包成一个文件”"></a></h2><p><a href="https://micro.static-php.dev" target="_blank" rel="noreferrer">phpmicro</a> 是一个第三方 PHP SAPIStaticPHP 对其提供原生支持。 它能将 PHP 解释器本身和你的 <code>.php</code> 源文件(或 <code>.phar</code> 打包文件)合并成单个自解压可执行文件(<code>sfx</code>)。</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span>micro.sfx + your-app.phar = your-app (可直接运行,无任何依赖)</span></span></code></pre></div><p>这特别适合分发 PHP 编写的命令行工具:用户拿到的只是一个普通的可执行文件,完全感知不到背后是 PHP。</p><h2 id="改善你的项目分发与部署" tabindex="-1">改善你的项目分发与部署 <a class="header-anchor" href="#改善你的项目分发与部署" aria-label="Permalink to “改善你的项目分发与部署”"></a></h2><p><strong>取代臃肿的 Docker 基础镜像</strong></p><p>官方 <code>php:8.x</code> 镜像动辄数百 MB大多数情况下只是为了提供一个 PHP 运行环境。 改用静态 PHP 二进制配合极简基础镜像(甚至 <code>FROM scratch</code>),镜像体积可以压缩到个位数 MB启动速度也更快。</p><p><strong>构建可分发的 PHP CLI 工具</strong></p><p><a href="https://symfony.com/doc/current/components/console.html" target="_blank" rel="noreferrer">symfony/console</a><a href="https://laravel-zero.com" target="_blank" rel="noreferrer">Laravel Zero</a> 写好你的 CLI 程序, 再用 <a href="https://github.com/box-project/box" target="_blank" rel="noreferrer">Box</a> 打包成 <code>.phar</code>,最后通过 phpmicro 合并为单文件可执行程序。 最终产物可以直接分发,用户无需安装任何 PHP 环境,和 Go、Rust 工具的体验完全一致。</p><p><strong>基于 FrankenPHP 构建单文件 Web 应用</strong></p><p><a href="https://frankenphp.dev" target="_blank" rel="noreferrer">FrankenPHP</a> 是一个现代 PHP 应用服务器,内置 HTTP/2、HTTP/3 和 HTTPS 自动管理。 StaticPHP 支持将 FrankenPHP 连同所需扩展一起静态编译, 最终产物是一个包含完整 Web 服务器的单一可执行文件,无需 Nginx、PHP-FPM直接部署即可运行。</p><h2 id="社区" tabindex="-1">社区 <a class="header-anchor" href="#社区" aria-label="Permalink to “社区”"></a></h2><p>加入我们的 <a href="https://discord.gg/xf6Rd4pEAk" target="_blank" rel="noreferrer">Discord 服务器</a>,提问、分享构建成果,与其他 StaticPHP 用户交流。</p><h2 id="接下来" tabindex="-1">接下来 <a class="header-anchor" href="#接下来" aria-label="Permalink to “接下来”"></a></h2><ul><li><a href="./installation.html">安装 StaticPHP</a> — 安装 StaticPHP 构建工具</li><li><a href="./first-build.html">第一次构建</a> — 完整流程演示:从下载源码到得到可执行文件</li><li><a href="./cli-reference.html">命令行参考</a> — 所有命令与选项速查</li></ul></div></div></main><footer class="VPDocFooter" data-v-7011f0d8 data-v-e257564d><!--[--><!--]--><!----><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-e257564d><span class="visually-hidden" id="doc-footer-aria-label" data-v-e257564d>Pager</span><div class="pager" data-v-e257564d><!----></div><div class="pager" data-v-e257564d><a class="VPLink link pager-link next" href="/zh/guide/installation.html" data-v-e257564d><!--[--><span class="desc" data-v-e257564d>Next page</span><span class="title" data-v-e257564d>安装</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-1df9f90f data-v-c3855bb3><div class="container" data-v-c3855bb3><p class="message" data-v-c3855bb3>Released under the MIT License.</p><p class="copyright" data-v-c3855bb3>Copyright © 2023-present crazywhalecc</p></div></footer><!--[--><!--]--></div></div>
<script>window.__VP_HASH_MAP__=JSON.parse("{\"deps-craft-yml.md\":\"DaRp5sDR\",\"en_contributing_index.md\":\"Bw6aGZo7\",\"en_develop_artifact-model.md\":\"Be9wN_ZU\",\"en_develop_build-lifecycle.md\":\"BrkkrOI9\",\"en_develop_craft-yml.md\":\"CJqlRAWM\",\"en_develop_doctor-module.md\":\"BPx_gh7b\",\"en_develop_extending_annotations.md\":\"rWEgD5t7\",\"en_develop_extending_custom-artifact.md\":\"BQoftnUi\",\"en_develop_extending_dependency-injection.md\":\"3RvnsJs8\",\"en_develop_extending_index.md\":\"CBALgGvM\",\"en_develop_extending_lifecycle-hooks.md\":\"TH51ajMN\",\"en_develop_extending_package-classes.md\":\"DL47sxq4\",\"en_develop_index.md\":\"CDPdLdXm\",\"en_develop_package-model.md\":\"D5wiXvya\",\"en_develop_php-src-changes.md\":\"CIUUevPf\",\"en_develop_registry.md\":\"B5tf5XnG\",\"en_develop_structure.md\":\"B3aY4J4P\",\"en_develop_system-build-tools.md\":\"aR6vgJMi\",\"en_faq_index.md\":\"ButqLRAC\",\"en_guide_cli-generator.md\":\"Bh1mnldB\",\"en_guide_cli-reference.md\":\"B6zUxFdM\",\"en_guide_deps-map.md\":\"B9M0h5GJ\",\"en_guide_env-vars.md\":\"B5JOZL1S\",\"en_guide_extension-notes.md\":\"C1QFg1E9\",\"en_guide_extensions.md\":\"CYT0fXgd\",\"en_guide_first-build.md\":\"C3LOd79t\",\"en_guide_index.md\":\"Chrx4Kg2\",\"en_guide_installation.md\":\"DNcSrgIL\",\"en_guide_migrate-from-v2.md\":\"CfVymFnT\",\"en_guide_sapi-reference.md\":\"Dx3FnmW6\",\"en_guide_troubleshooting.md\":\"Mc4ZUzP-\",\"en_index.md\":\"CZz4hp1l\",\"index.md\":\"DlohUUjo\",\"zh_contributing_index.md\":\"BxNPLW0M\",\"zh_develop_artifact-model.md\":\"BtcNBk1j\",\"zh_develop_build-lifecycle.md\":\"D1JbjvDB\",\"zh_develop_craft-yml.md\":\"oQn7yY_F\",\"zh_develop_doctor-module.md\":\"DAzJoWwn\",\"zh_develop_extending_annotations.md\":\"DAa7FG7j\",\"zh_develop_extending_custom-artifact.md\":\"BTEWH7KO\",\"zh_develop_extending_dependency-injection.md\":\"PLkrv44m\",\"zh_develop_extending_index.md\":\"B478Mpx4\",\"zh_develop_extending_lifecycle-hooks.md\":\"BNdlHrBu\",\"zh_develop_extending_package-classes.md\":\"CLofM-pE\",\"zh_develop_index.md\":\"CYr92Q4h\",\"zh_develop_package-model.md\":\"DYRZ8aaf\",\"zh_develop_php-src-changes.md\":\"QIFUEZHE\",\"zh_develop_registry.md\":\"BvRBmoGT\",\"zh_develop_structure.md\":\"EpUhxfrR\",\"zh_develop_system-build-tools.md\":\"DEEE1raf\",\"zh_faq_index.md\":\"DkTldA8b\",\"zh_guide_cli-generator.md\":\"Djvjm7dZ\",\"zh_guide_cli-reference.md\":\"DMttieGz\",\"zh_guide_deps-map.md\":\"BsudOLor\",\"zh_guide_env-vars.md\":\"Bs72W99k\",\"zh_guide_extension-notes.md\":\"D-KMlaiu\",\"zh_guide_extensions.md\":\"CdF_j2fu\",\"zh_guide_first-build.md\":\"CQdFhKsg\",\"zh_guide_index.md\":\"B1jsb7XJ\",\"zh_guide_installation.md\":\"Ap2snxXu\",\"zh_guide_migrate-from-v2.md\":\"Df8wnmfP\",\"zh_guide_sapi-reference.md\":\"DXv5eV6I\",\"zh_guide_troubleshooting.md\":\"CueHHZkW\",\"zh_index.md\":\"CkWIeJB6\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"StaticPHP\",\"description\":\"A powerful tool designed for building portable executables including PHP, extensions, and more.\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":\"/images/static-php_nobg.png\",\"nav\":[],\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/crazywhalecc/static-php-cli\"}],\"footer\":{\"message\":\"Released under the MIT License.\",\"copyright\":\"Copyright © 2023-present crazywhalecc\"},\"externalLinkIcon\":true,\"search\":{\"provider\":\"algolia\",\"options\":{\"appId\":\"IHJHUB1SF1\",\"apiKey\":\"8266d31cc2ffbd0e059f1c6e5bdaf8fc\",\"indexName\":\"static-php docs\",\"askAi\":{\"assistantId\":\"b72369b2-60a5-461d-902c-5c18d8c05902\",\"agentStudio\":true,\"sidePanel\":true}}}},\"locales\":{\"en\":{\"label\":\"English\",\"lang\":\"en\",\"themeConfig\":{\"nav\":[{\"text\":\"Guide\",\"link\":\"/en/guide/\"},{\"text\":\"Develop\",\"link\":\"/en/develop/\"},{\"text\":\"Contributing\",\"link\":\"/en/contributing/\"},{\"text\":\"FAQ\",\"link\":\"/en/faq/\"},{\"text\":\"v3 (alpha)\",\"items\":[{\"text\":\"v3 (alpha)\",\"link\":\"/en/\"},{\"text\":\"v2\",\"link\":\"https://static-php.github.io/v2-docs/\"}]}],\"sidebar\":{\"/en/guide/\":[{\"text\":\"Getting Started\",\"items\":[{\"text\":\"Overview\",\"link\":\"/en/guide/\"},{\"text\":\"Installation\",\"link\":\"/en/guide/installation\"},{\"text\":\"First Build\",\"link\":\"/en/guide/first-build\"},{\"text\":\"PHP SAPI Reference\",\"link\":\"/en/guide/sapi-reference\"},{\"text\":\"CLI Reference\",\"link\":\"/en/guide/cli-reference\"},{\"text\":\"Migrating from v2\",\"link\":\"/en/guide/migrate-from-v2\"}]},{\"text\":\"Extensions\",\"items\":[{\"text\":\"Supported Extensions\",\"link\":\"/en/guide/extensions\"},{\"text\":\"Extension Notes\",\"link\":\"/en/guide/extension-notes\"},{\"text\":\"Build Command Generator\",\"link\":\"/en/guide/cli-generator\"}]},{\"text\":\"Reference\",\"items\":[{\"text\":\"Environment Variables\",\"link\":\"/en/guide/env-vars\"},{\"text\":\"Dependency Table\",\"link\":\"/en/guide/deps-map\"},{\"text\":\"Troubleshooting\",\"link\":\"/en/guide/troubleshooting\"}]}],\"/en/develop/\":[{\"text\":\"Overview\",\"items\":[{\"text\":\"Get Started\",\"link\":\"/en/develop/\"},{\"text\":\"Project Structure\",\"link\":\"/en/develop/structure\"}]},{\"text\":\"Configuration Reference\",\"items\":[{\"text\":\"Registry\",\"link\":\"/en/develop/registry\"},{\"text\":\"Package Model\",\"link\":\"/en/develop/package-model\"},{\"text\":\"Artifact Model\",\"link\":\"/en/develop/artifact-model\"},{\"text\":\"craft.yml\",\"link\":\"/en/develop/craft-yml\"}]},{\"text\":\"Build System\",\"items\":[{\"text\":\"Build Lifecycle\",\"link\":\"/en/develop/build-lifecycle\"},{\"text\":\"Compilation Tools\",\"link\":\"/en/develop/system-build-tools\"},{\"text\":\"Doctor\",\"link\":\"/en/develop/doctor-module\"},{\"text\":\"PHP Source Modifications\",\"link\":\"/en/develop/php-src-changes\"}]},{\"text\":\"Extending StaticPHP\",\"items\":[{\"text\":\"Introduction\",\"link\":\"/en/develop/extending/\"},{\"text\":\"Writing Package Classes\",\"link\":\"/en/develop/extending/package-classes\"},{\"text\":\"Annotations Reference\",\"link\":\"/en/develop/extending/annotations\"},{\"text\":\"Lifecycle Hooks\",\"link\":\"/en/develop/extending/lifecycle-hooks\"},{\"text\":\"Dependency Injection\",\"link\":\"/en/develop/extending/dependency-injection\"},{\"text\":\"Custom Artifact\",\"link\":\"/en/develop/extending/custom-artifact\"}]}],\"/en/contributing/\":[{\"text\":\"Contributing\",\"items\":[{\"text\":\"Contributing Guide\",\"link\":\"/en/contributing/\"}]}],\"/en/faq/\":[{\"text\":\"FAQ\",\"items\":[{\"text\":\"Frequently Asked Questions\",\"link\":\"/en/faq/\"}]}]},\"footer\":{\"message\":\"Released under the MIT License.\",\"copyright\":\"Copyright © 2023-present crazywhalecc\"}}},\"zh\":{\"label\":\"简体中文\",\"lang\":\"zh\",\"themeConfig\":{\"nav\":[{\"text\":\"构建指南\",\"link\":\"/zh/guide/\"},{\"text\":\"开发者\",\"link\":\"/zh/develop/\"},{\"text\":\"贡献\",\"link\":\"/zh/contributing/\"},{\"text\":\"FAQ\",\"link\":\"/zh/faq/\"},{\"text\":\"v3 (alpha)\",\"items\":[{\"text\":\"v3 (alpha)\",\"link\":\"/zh/\"},{\"text\":\"v2\",\"link\":\"https://static-php.github.io/v2-docs/\"}]}],\"sidebar\":{\"/zh/guide/\":[{\"text\":\"快速上手\",\"items\":[{\"text\":\"概览\",\"link\":\"/zh/guide/\"},{\"text\":\"安装\",\"link\":\"/zh/guide/installation\"},{\"text\":\"第一次构建\",\"link\":\"/zh/guide/first-build\"},{\"text\":\"PHP SAPI 构建参考\",\"link\":\"/zh/guide/sapi-reference\"},{\"text\":\"命令行参考\",\"link\":\"/zh/guide/cli-reference\"},{\"text\":\"从 v2 迁移\",\"link\":\"/zh/guide/migrate-from-v2\"}]},{\"text\":\"扩展\",\"items\":[{\"text\":\"支持的扩展列表\",\"link\":\"/zh/guide/extensions\"},{\"text\":\"扩展注意事项\",\"link\":\"/zh/guide/extension-notes\"},{\"text\":\"命令生成器\",\"link\":\"/zh/guide/cli-generator\"}]},{\"text\":\"参考\",\"items\":[{\"text\":\"环境变量\",\"link\":\"/zh/guide/env-vars\"},{\"text\":\"依赖关系图\",\"link\":\"/zh/guide/deps-map\"},{\"text\":\"故障排除\",\"link\":\"/zh/guide/troubleshooting\"}]}],\"/zh/develop/\":[{\"text\":\"概览\",\"items\":[{\"text\":\"开发简介\",\"link\":\"/zh/develop/\"},{\"text\":\"项目结构\",\"link\":\"/zh/develop/structure\"}]},{\"text\":\"配置参考\",\"items\":[{\"text\":\"Registry\",\"link\":\"/zh/develop/registry\"},{\"text\":\"Package 模型\",\"link\":\"/zh/develop/package-model\"},{\"text\":\"Artifact 模型\",\"link\":\"/zh/develop/artifact-model\"},{\"text\":\"craft.yml 配置\",\"link\":\"/zh/develop/craft-yml\"}]},{\"text\":\"构建系统\",\"items\":[{\"text\":\"构建生命周期\",\"link\":\"/zh/develop/build-lifecycle\"},{\"text\":\"编译工具\",\"link\":\"/zh/develop/system-build-tools\"},{\"text\":\"Doctor 环境检查\",\"link\":\"/zh/develop/doctor-module\"},{\"text\":\"对 PHP 源码的修改\",\"link\":\"/zh/develop/php-src-changes\"}]},{\"text\":\"扩展 StaticPHP\",\"items\":[{\"text\":\"简介\",\"link\":\"/zh/develop/extending/\"},{\"text\":\"编写 Package 类\",\"link\":\"/zh/develop/extending/package-classes\"},{\"text\":\"注解参考\",\"link\":\"/zh/develop/extending/annotations\"},{\"text\":\"生命周期 Hook\",\"link\":\"/zh/develop/extending/lifecycle-hooks\"},{\"text\":\"依赖注入\",\"link\":\"/zh/develop/extending/dependency-injection\"},{\"text\":\"自定义 Artifact\",\"link\":\"/zh/develop/extending/custom-artifact\"}]}],\"/zh/contributing/\":[{\"text\":\"贡献指南\",\"items\":[{\"text\":\"贡献指南\",\"link\":\"/zh/contributing/\"}]}],\"/zh/faq/\":[{\"text\":\"FAQ\",\"items\":[{\"text\":\"常见问题\",\"link\":\"/zh/faq/\"}]}]},\"footer\":{\"message\":\"Released under the MIT License.\",\"copyright\":\"Copyright © 2023-present crazywhalecc\"}}}},\"scrollOffset\":134,\"cleanUrls\":false,\"additionalConfig\":{}}");</script>
</body>
</html>