Note that the limits are given in bytes instead of megabytes. You can verify with:
<?php echo Imagick::getResourceLimit(Imagick::RESOURCETYPE_MEMORY); ?>
(PECL imagick 2.0.0)
Imagick::setResourceLimit — Sets the limit for a particular resource
$type
, int $limit
) : boolThis method is used to modify the resource limits of the underlying ImageMagick library.
type
Refer to the list of resourcetype constants.
limit
One of the resourcetype constants. The unit depends on the type of the resource being limited.
成功时返回 TRUE
。
Note that the limits are given in bytes instead of megabytes. You can verify with:
<?php echo Imagick::getResourceLimit(Imagick::RESOURCETYPE_MEMORY); ?>
This list should help setting the limits:
imagick::RESOURCETYPE_AREA (integer) //equivalent of MAGICK_AREA_LIMIT
imagick::RESOURCETYPE_DISK (integer) //equivalent of MAGICK_DISK_LIMIT
imagick::RESOURCETYPE_FILE (integer) //equivalent of MAGICK_FILE_LIMIT
imagick::RESOURCETYPE_MAP (integer) //equivalent of MAGICK_MAP_LIMIT
imagick::RESOURCETYPE_MEMORY (integer) //equivalent of MAGICK_MEMORY_LIMIT
IMagick::RESOURCETYPE_THREADS is missing, yet you're still able to limit the number of thready ImageMagick should use:
<?php
// IMagick::setResourceLimit(IMagick::RESOURCETYPE_THREADS, 2);
IMagick::setResourceLimit(6, 2);