mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-03-18 04:44:53 +08:00
2 lines
12 KiB
JavaScript
2 lines
12 KiB
JavaScript
|
|
import{_ as o,c as l,o as a,af as i}from"./chunks/framework.PeLcR_tw.js";const b=JSON.parse('{"title":"扩展注意事项","description":"","frontmatter":{},"headers":[],"relativePath":"zh/guide/extension-notes.md","filePath":"zh/guide/extension-notes.md"}'),r={name:"zh/guide/extension-notes.md"};function s(h,e,c,d,t,p){return a(),l("div",null,e[0]||(e[0]=[i('<h1 id="扩展注意事项" tabindex="-1">扩展注意事项 <a class="header-anchor" href="#扩展注意事项" aria-label="Permalink to “扩展注意事项”"></a></h1><p>因为是静态编译,扩展不会 100% 完美编译,而且不同扩展对 PHP、环境都有不同的要求,这里将一一列举。</p><h2 id="curl" tabindex="-1">curl <a class="header-anchor" href="#curl" aria-label="Permalink to “curl”"></a></h2><p>HTTP3 支持默认未启用,需在编译时添加 <code>--with-libs="nghttp2,nghttp3,ngtcp2"</code> 以启用 PHP 8.4 及以上版本的 HTTP3 支持。</p><p>使用 curl 请求 HTTPS 时,可能存在 <code>error:80000002:system library::No such file or directory</code> 错误, 解决办法详见 <a href="./../faq/#无法使用-ssl">FAQ - 无法使用 ssl</a>。</p><h2 id="phpmicro" tabindex="-1">phpmicro <a class="header-anchor" href="#phpmicro" aria-label="Permalink to “phpmicro”"></a></h2><ol><li>phpmicro SAPI 仅支持 PHP >= 8.0 版本。</li></ol><h2 id="swoole" tabindex="-1">swoole <a class="header-anchor" href="#swoole" aria-label="Permalink to “swoole”"></a></h2><ol><li>swoole >= 5.0 版本仅支持 PHP >= 8.0 版本。</li><li>swoole 目前不支持 PHP 8.0 版本 curl 的 hook(后续有可能会修复)。</li><li>编译时只包含 <code>swoole</code> 扩展时不会完整开启支持的 Swoole 数据库协程 hook,如需使用请加入对应的 <code>swoole-hook-xxx</code> 扩展。</li><li>swoole 在部分扩展组合下可能出现 <code>zend_mm_heap corrupted</code> 问题,暂未找到是什么原因导致的。</li></ol><h2 id="swoole-hook-pgsql" tabindex="-1">swoole-hook-pgsql <a class="header-anchor" href="#swoole-hook-pgsql" aria-label="Permalink to “swoole-hook-pgsql”"></a></h2><p>swoole-hook-pgsql 不是一个扩展,而是 Swoole 的 Hook 特性。 如果你在编译时添加了 <code>swoole,swoole-hook-pgsql</code>,你将启用 Swoole 的 PostgreSQL 客户端和 <code>pdo_pgsql</code> 扩展的协程模式。</p><p>swoole-hook-pgsql 与 <code>pdo_pgsql</code> 扩展冲突。如需使用 Swoole 和 <code>pdo_pgsql</code>,请删除 pdo_pgsql 扩展,启用 <code>swoole</code> 和 <code>swoole-hook-pgsql</code> 即可。 该扩展包含了 <code>pdo_pgsql</code> 的协程环境的实现。</p><p>在 macOS 系统,<code>pdo_pgsql</code> 可能无法正常连接到 postgresql 服务器,请谨慎使用。</p><h2 id="swoole-hook-mysql" tabindex="-1">swoole-hook-mysql <a class="header-anchor" href="#swoole-hook-mysql" aria-label="Permalink to “swoole-hook-mysql”"></a></h2><p>swoole-hook-mysql 不是一个扩展,而是 Swoole 的 Hook 特性。 如果你在编译时添加了 <code>swoole,swoole-hook-mysql</code>,你将启用 Swoole 的 <code>mysqlnd</code> 和 <code>pdo_mysql</code> 的协程模式。</p><h2 id="swoole-hook-sqlite" tabindex="-1">swoole-hook-sqlite <a class="header-anchor" href="#swoole-hook-sqlite" aria-label="Permalink to “swoole-hook-sqlite”"></a></h2><p>swoole-hook-sqlite 不是一个扩展,而是 Swoole 的 Hook 特性。 如果你在编译时添加了 <code>swoole,swoole-hook-sqlite</code>,你将启用 Swoole 的 <code>pdo_sqlite</code> 的协程模式(Swoole 必须为 5.1 以上)。</p><p>swoole-hook-sqlite 与 <code>pdo_sqlite</code> 扩展冲突。如需使用 Swoole 和 <code>pdo_sqlite</code>,请删除 pdo_sqlite 扩展,启用 <code>swoole</code> 和 <code>swoole-hook-sqlite</code> 即可。 该扩展包含了 <code>pdo_sqlite</code> 的协程环境的实现。</p><h2 id="swow" tabindex="-1">swow <a class="header-anchor" href="#swow" aria-label="Permalink to “swow”"></a></h2><ol><li>swow <EFBFBD><EFBFBD>
|