我想在 Php 文件中加载扩展,因为我无权访问 php.ini 文件。
我试过了:
ini_set('extension','php_gd2.dll');
该文件与Php页面位于同一目录中,但它不起作用。
必须始终在 php.ini 中完成还是可以像上面那样完成?
if (!extension_loaded('php_gd2')) {
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
dl('php_gd2.dll');
} else {
dl('php_gd2.so');
}
}
但请注意,它不适用于所有 SAPI;并且在安全模式下运行或 PHP 构建时使用 zts 支持时显式禁用。
扩展通常在运行时加载,在许多服务器情况下是 http 服务器的启动。所以这是相当不可能的 更新 - 我错了,见马克贝克的回答,真的不需要。在共享主机环境中,您肯定无法访问此类功能(因为风险太大),并且当您可以访问 php.ini... 为什么不使用它?
更新:如果您甚至无法访问 php.ini,那么任何人都不会让您访问自定义扩展等危险功能(除非管理员不擅长)。该扩展可以访问 PHP 的内部,并且可以真正与服务器混淆。