动态加载 php 扩展

Posted

技术标签:

【中文标题】动态加载 php 扩展【英文标题】:Load php extensions dynamically 【发布时间】:2011-04-20 11:36:12 【问题描述】:

我有一个实时服务器,我想偶尔将其用于测试目的。我只能访问 FTP 和那里的一些基本管理工具。

阅读the documentation for dl() 给了我希望,即使我无法将它添加到加载的扩展列表中,我也可以动态加载 xDebug。我不知道怎么做。

问题:如何获得可以与dl() 一起使用的适当编译版本的xdebug(或任何其他php 扩展)?

顺便说一句,AFAIK 就我而言,操作系统是 CentOS 4,但我也希望得到更广泛的答案 - 以供将来参考。

【问题讨论】:

【参考方案1】:

我一般用php_uname来判断服务器操作系统

function os_check() 
$os_string = php_uname('s');
if (strpos(strtoupper($os_string), 'WIN')!==false) 
 return 'windows';
 else 
 return 'linux';

【讨论】:

【参考方案2】:

此类信息在phpInfo()的各个地方

<?php
phpinfo();
?>

【讨论】:

【参考方案3】:

xdebug 是一个 zend 引擎扩展,因此不能动态加载。

您可以尝试使用 xhprof。这应该可以在运行时加载(不过我没有太多经验,所以我不能提供具体细节)

【讨论】:

这对我来说是全新的。您能否解释或参考它们有何不同 - php 和 zend 引擎扩展? ***.com/questions/1758014/…

以上是关于动态加载 php 扩展的主要内容,如果未能解决你的问题,请参考以下文章

PHP动态扩展模块安装

PHP启动:无法加载动态库

PHP扩展模块安装

88.PHP扩展模块安装

PHP获取HTML内容及动态渲染js加载内容

PHP启动:动态库加载失败(PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/php7/lib/php