extension和php.ini指令有什么区别?

时间:2016-12-13 12:05:46

标签: php

扩展和php.ini指令有什么区别?

例如在php.ini指令中,我看到mbstring.http_input作为选项,我也在扩展名multibyte string extension中看到它。

2 个答案:

答案 0 :(得分:2)

指令是一般配置选项 - 设置 有些可以在运行时更改(使用ini_set功能),有些只能使用配置文件(php.ini或.htaccess)进行更改。

扩展是二进制编译的库,它允许在PHP代码中使用特定的函数。它们是用C语言编写的,并使用

动态加载
extension=ext.dll/ext.so ; (based on your OS)

某些扩展提供/需要配置选项,并且可以完全按照任何其他指令的工作方式处理/更改这些选项。

例如,xdebug扩展程序使我们能够control the output of the var_dump function使用

xdebug.var_display_max_children
xdebug.var_display_max_data
(and more)

这些指令控制/影响动态加载的扩展程序

答案 1 :(得分:0)

正如其名称所暗示的那样,扩展扩展了语言和运行时的功能。它可以向全局范围添加新的函数和类型(例如MySQLi扩展中的mysqli_函数)或更改现有的实现,以便它们更快或不同地执行操作。

但是扩展程序提供的功能几乎不适合所有场景。输入设置文件:您可以在此处配置扩展已知的参数,因此扩展可以根据您的配置更改其行为。请参阅示例the MySQLi Runtime Configuration page