PHP ini_set(‘memory_limit’, xxx); 第二参数详解
var_dump(ini_get('memory_limit'));
$arr = [];
while (true) {
$arr[] = 'new';
}
ini_set() 内容(不区分大小写) | var_dump() 内容(都是string类型) | 报错提示的内容 | 备注 |
---|
(默认值) | 128M | 134217728 bytes(128M) | 默认分配内存(能在php.ini内设置?) |
“1M” | 1M | 2097152 bytes(2M) | 最低2M |
“3M” | 3M | 3145728 bytes(3M) | 不是以“2M”为步长 |
“3.5M” | 3.5M | 3145728 bytes(3M) | 取整。若小数部分不为0.5,则报错(错中错) |
“#” | # | 2097152 bytes(2M) | 设置错误时,给最小内存 |
“3MB” | 3MB | 2097152 bytes(2M) | 视为设置错误 |
“10000000B” | 10000000B | 10000000 bytes | 支持对B的设置 |
10000000 | 10000000 | 10000000 bytes | int / float类型参数是对字节的限制 |
“3000K” | 3000K | 3072000 bytes(3000K) | 支持对KB的设置 |
“1G” | 1G | 1073741824 bytes(1G) | 支持对GB的设置 |
0 | 0 | 2097152 bytes(2M) | 视为对字节限制,小于最小内存 |
true | 1 | 2097152 bytes(2M) | 视为对字节限制,小于最小内存 |
false / null | (空字符串) | 2097152 bytes(2M) | 错误字符?自动类型转换为0? |
-1 | -1 | ??? | 表示内存无限制 |