PHP8 运行时配置
这些函数的行为受 php.ini 中的设置影响。
以下表格列出并解释了WinCache扩展提供的配置设置:
名字 | 默认 | Minimum | Maximum | 可修改范围 | 更新日志 |
---|---|---|---|---|---|
wincache.fcenabled | "1" | "0" | "1" | PHP_INI_ALL | Available as of WinCache 1.0.0 |
wincache.fcenabledfilter | "NULL" | "NULL" | "NULL" | PHP_INI_SYSTEM | Available as of WinCache 1.0.0 |
wincache.fcachesize | "24" | "5" | "255" | PHP_INI_SYSTEM | Available as of WinCache 1.0.0 |
wincache.fcndetect | "1" | "0" | "1" | PHP_INI_SYSTEM | Available as of WinCache 1.1.0 |
wincache.maxfilesize | "256" | "10" | "2048" | PHP_INI_SYSTEM | Available as of WinCache 1.0.0 |
wincache.ocenabled | "1" | "0" | "1" | PHP_INI_ALL | Available as of WinCache 1.0.0. Removed as of 2.0.0.0 |
wincache.ocenabledfilter | "NULL" | "NULL" | "NULL" | PHP_INI_SYSTEM | Available as of WinCache 1.0.0. Removed as of 2.0.0.0 |
wincache.ocachesize | "96" | "15" | "255" | PHP_INI_SYSTEM | Available as of WinCache 1.0.0. Removed as of 2.0.0.0 |
wincache.filecount | "4096" | "1024" | "16384" | PHP_INI_SYSTEM | Available as of WinCache 1.0.0 |
wincache.chkinterval | "30" | "0" | "300" | PHP_INI_SYSTEM | Available as of WinCache 1.0.0 |
wincache.ttlmax | "1200" | "0" | "7200" | PHP_INI_SYSTEM | Available as of WinCache 1.0.0 |
wincache.enablecli | 0 | 0 | 1 | PHP_INI_SYSTEM | Available as of WinCache 1.0.0 |
wincache.ignorelist | NULL | NULL | NULL | PHP_INI_ALL | Available as of WinCache 1.0.0 |
wincache.namesalt | NULL | NULL | NULL | PHP_INI_SYSTEM | Available as of WinCache 1.0.0 |
wincache.ucenabled | 1 | 0 | 1 | PHP_INI_SYSTEM | Available as of WinCache 1.1.0 |
wincache.ucachesize | 8 | 5 | 85 | PHP_INI_SYSTEM | Available as of WinCache 1.1.0 |
wincache.scachesize | 8 | 5 | 85 | PHP_INI_SYSTEM | Available as of WinCache 1.1.0 |
wincache.rerouteini | NULL | NULL | NULL | PHP_INI_SYSTEM | Available as of WinCache 1.2.0. Removed as of 1.3.7 |
wincache.reroute_enabled | 1 | 0 | 1 | PHP_INI_SYSTEM | PHP_INI_PERDIR | Available as of WinCache 1.3.7 |
wincache.srwlocks | 1 | 0 | 1 | PHP_INI_SYSTEM | Available as of WinCache 1.3.6.3. Removed as of 2.0.0.0 |
wincache.filemapdir | NULL | NULL | NULL | PHP_INI_SYSTEM | Available as of WinCache 1.3.7.4 |
有关 PHP_INI_* 样式的更多详情与定义,见 配置可被设定范围 。
这是配置指令的简短说明。
wincache.fcenabled
bool-
启用或禁用文件缓存功能。
wincache.fcenabledfilter
string-
定义一个逗号分隔的 IIS 网站标识符列表,用于启用或禁用文件缓存。此设置与 wincache.fcenabled 一起使用:如果将 wincache.fcenabled 设置为 1,则在 wincache.fcenabledfilter 中列出的站点将关闭文件缓存;如果将 wincache.fcenabled 设置为 0,则在 wincache.fcenabledfilter 中列出的站点将启用文件缓存。
wincache.fcachesize
int-
定义分配给文件缓存的最大内存大小(以兆字节为单位)。如果所有缓存文件的总大小超过此设置中指定的值,那么大部分陈旧的文件将从文件缓存中删除。
wincache.fcndetect
bool-
启用或禁用文件更改通知检测功能。如果支持文件更改通知,则会在文件系统中的相应文件被修改后立即使用它来刷新opcode和文件缓存条目。如果不支持文件更改通知,例如在使用网络文件共享时,那么wincache将以wincache.chkinterval指定的定期时间间隔轮询文件更改。
wincache.maxfilesize
int-
定义允许的单个文件最大大小(以千字节为单位)以进行缓存。如果文件大小超过指定值,该文件将不会被缓存。此设置仅适用于文件缓存。
wincache.ocenabled
bool-
警告 自2.0.0.0版本以后,已删除此选项。
启用或禁用opcode缓存功能。
wincache.ocenabledfilter
string-
警告 自2.0.0.0版本以后,已删除此选项。
定义一个逗号分隔的 IIS 网站标识符列表,用于启用或禁用opcode缓存。此设置与 wincache.ocenabled 一起使用:如果将 wincache.ocenabled 设置为 1,则在 wincache.ocenabledfilter 中列出的站点将关闭opcode缓存;如果将 wincache.ocenabled 设置为 0,则在 wincache.ocenabledfilter 中列出的站点将启用opcode缓存。
wincache.ocachesize
int-
警告 自2.0.0.0版本以后,已删除此选项。
定义分配给opcode缓存的最大内存大小(以兆字节为单位)。如果缓存的opcode大小超过指定的值,那么将从缓存中删除大部分陈旧的opcode。请注意,opcode缓存的大小必须至少是文件缓存大小的3倍。如果不是这种情况,那么opcode缓存大小将会自动增加。
wincache.filecount
int-
定义了扩展预计会缓存多少个文件,以便在启动时分配适当的内存大小。如果文件数量超过指定的值,WinCache将根据需要重新分配更多内存。
wincache.chkinterval
int-
定义扩展检查文件更改以刷新缓存的频率(以秒为单位)。将其设置为0将禁用缓存的刷新。除非由垃圾回收器或IIS应用程序池被回收或调用了wincache_refresh_if_changed函数,否则文件更改不会反映在缓存中。
wincache.ttlmax
int-
定义了在不被使用的情况下缓存条目的最长存活时间(以秒为单位)。将其设置为0将禁用缓存清理程序,因此在IIS工作进程的生命周期内,缓存的条目将永远不会从缓存中移除。
wincache.enablecli
bool-
定义了在PHP以命令行(CLI)模式运行时是否启用缓存。
wincache.ignorelist
string-
定义了一个不应该被扩展缓存的文件列表。文件列表是通过使用文件名,用竖线符号("|")分隔的方式来指定的。
示例 #1
wincache.ignorelist
examplewincache.ignorelist = "index.php|misc.php|admin.php"
wincache.namesalt
string-
定义了一个字符串,用于在命名存储在共享内存中的特定扩展对象时使用。这用于避免其他应用程序在IIS工作进程中尝试访问共享内存时可能引起的冲突。namesalt字符串的长度不能超过8个字符。
wincache.ucenabled
bool- 启用或禁用用户缓存功能。
wincache.ucachesize
int- 定义了分配给用户缓存的最大内存大小(以兆字节为单位)。如果存储在用户缓存中的变量的总大小超过了指定的值,那么将从缓存中删除最陈旧的变量。
wincache.scachesize
int- 定义了分配给会话缓存的最大内存大小(以兆字节为单位)。如果存储在会话缓存中的数据的总大小超过了指定的值,那么将从缓存中删除最陈旧的数据。
wincache.rerouteini
string- 警告
自1.3.7版本以后,已删除此选项。请查看wincache.reroute_enabled,以获取1.3.7版本以后的类似功能。
指定reroute.ini文件的绝对路径或相对路径,该文件包含应该被WinCache函数等效替代的PHP函数列表。如果指定了相对路径,则假定它是相对于php-cgi.exe文件的位置的。
wincache.reroute_enabled
bool- 启用或禁用通过文件缓存对某些文件I/O函数的重定向。
wincache.srwlocks
bool-
警告 自2.0.0.0版本以后,已删除此选项。
启用或禁用使用共享读/写锁。在WinCache中进行死锁条件故障排除时,禁用此选项是有用的。
wincache.filemapdir
string-
指定用于存储共享内存段所使用的临时文件的绝对路径。此目录必须位于本地计算机上,而不是在网络文件系统上。如果未指定目录,则WinCache将使用Windows系统页面文件来存储所有共享内存段。