class Environment (View source)

Provides PHP environment helper methods.

Methods

static bool
checkMemoryLimit(string $required, $memory_limit = NULL)

Compares the memory required for an operation to the available memory.

static bool
setTimeLimit(int $time_limit)

Attempts to set the PHP maximum execution time.

static int
getUploadMaxSize()

Determines the maximum file upload size by querying the PHP settings.

Details

static bool checkMemoryLimit(string $required, $memory_limit = NULL)

Compares the memory required for an operation to the available memory.

Parameters

string $required

The memory required for the operation, expressed as a number of bytes with optional SI or IEC binary unit prefix (e.g. 2, 3K, 5MB, 10G, 6GiB, 8bytes, 9mbytes).

$memory_limit

(optional) The memory limit for the operation, expressed as a number of bytes with optional SI or IEC binary unit prefix (e.g. 2, 3K, 5MB, 10G, 6GiB, 8bytes, 9mbytes). If no value is passed, the current PHP memory_limit will be used. Defaults to NULL.

Return Value

bool

TRUE if there is sufficient memory to allow the operation, or FALSE otherwise.

static bool setTimeLimit(int $time_limit)

Attempts to set the PHP maximum execution time.

This function is a wrapper around the PHP function set_time_limit(). When called, set_time_limit() restarts the timeout counter from zero. In other words, if the timeout is the default 30 seconds, and 25 seconds into script execution a call such as set_time_limit(20) is made, the script will run for a total of 45 seconds before timing out.

If the current time limit is not unlimited it is possible to decrease the total time limit if the sum of the new time limit and the current time spent running the script is inferior to the original time limit. It is inherent to the way set_time_limit() works, it should rather be called with an appropriate value every time you need to allocate a certain amount of time to execute a task than only once at the beginning of the script.

Before calling set_time_limit(), we check if this function is available because it could be disabled by the server administrator.

Parameters

int $time_limit

An integer time limit in seconds, or 0 for unlimited execution time.

Return Value

bool

Whether set_time_limit() was successful or not.

static int getUploadMaxSize()

Determines the maximum file upload size by querying the PHP settings.

Return Value

int

A file size limit in bytes based on the PHP upload_max_filesize and post_max_size settings.