diff --git a/docs/en/faq/index.md b/docs/en/faq/index.md index a942244cd..b65dca463 100644 --- a/docs/en/faq/index.md +++ b/docs/en/faq/index.md @@ -44,6 +44,11 @@ So on macOS, you can **directly** use SPC to build statically compiled PHP binar 2. You will get `buildroot/modules/xdebug.so` and `buildroot/bin/php`. 3. The `xdebug.so` file could be used for php that version and thread-safe are the same. +For the Windows platform, since officially built extensions (such as `php_yaml.dll`) force the use of the `php8.dll` dynamic library as a link, and statically built PHP does not include any dynamic libraries other than system libraries, +php.exe built by static-php cannot load officially built dynamic extensions. Since static-php-cli does not yet support building dynamic extensions, there is currently no way to load dynamic extensions with static-php. + +However, Windows can normally use the `FFI` extension to load other dll files and call them. + ## Can it support Oracle database extension? Some extensions that rely on closed source libraries, such as `oci8`, `sourceguardian`, etc., diff --git a/docs/zh/faq/index.md b/docs/zh/faq/index.md index 27611a50a..142a1503f 100644 --- a/docs/zh/faq/index.md +++ b/docs/zh/faq/index.md @@ -41,6 +41,11 @@ buildroot/bin/php -d "zend_extension=/path/to/php{PHP_VER}-{ts/nts}/xdebug.so" - 2. 你将获得 `buildroot/modules/xdebug.so` 和 `buildroot/bin/php`。 3. `xdebug.so` 文件可用于版本和线程安全相同的 php。 +对于 Windows 平台,由于官方构建的扩展(如 `php_yaml.dll`)强制使用了 `php8.dll` 动态库作为链接,静态构建的 PHP 不包含任何系统库以外的动态库, +所以 Windows 下无法加载官方构建的动态扩展。 由于 static-php-cli 还暂未支持构建动态扩展,所以目前还没有让 static-php 加载动态扩展的方法。 + +不过,Windows 可以正常使用 `FFI` 扩展加载其他的 dll 文件并调用。 + ## 可以支持 Oracle 数据库扩展吗? 部分依赖库闭源的扩展,如 `oci8`、`sourceguardian` 等,它们没有提供纯静态编译的依赖库文件(`.a`),仅提供了动态依赖库文件(`.so`),