Inheritance | YiiRequirementChecker |
---|---|
Available since version | 2.0 |
Source Code | https://github.com/yiisoft/yii2/blob/master/framework/equirementChecker.php |
YiiRequirementChecker allows checking, if current system meets the requirements for running the Yii application.
This class allows rendering of the check report for the web and console application interface.
Example:
require_once('path/to/YiiRequirementChecker.php'); $requirementsChecker = new YiiRequirementChecker(); $requirements = array( array( 'name' => 'PHP Some Extension', 'mandatory' => true, 'condition' => extension_loaded('some_extension'), 'by' => 'Some application feature', 'memo' => 'PHP extension "some_extension" required', ), ); $requirementsChecker->checkYii()->check($requirements)->render();
If you wish to render the report with your own representation, use getResult() instead of render()
Requirement condition could be in format "eval:PHP expression". In this case specified PHP expression will be evaluated in the context of this class instance. For example:
$requirements = array( array( 'name' => 'Upload max file size', 'condition' => 'eval:$this->checkUploadMaxFileSize("5M")', ), );
Note: this class definition does not match ordinary Yii style, because it should match PHP 4.3 and should not use features from newer PHP versions!
Method | Description | Defined By |
---|---|---|
check() | Check the given requirements, collecting results into internal field. | YiiRequirementChecker |
checkPhpExtensionVersion() | Checks if the given PHP extension is available and its version matches the given one. | YiiRequirementChecker |
checkPhpIniOff() | Checks if PHP configuration option (from php.ini) is off. | YiiRequirementChecker |
checkPhpIniOn() | Checks if PHP configuration option (from php.ini) is on. | YiiRequirementChecker |
checkUploadMaxFileSize() | Checks if upload max file size matches the given range. | YiiRequirementChecker |
checkYii() | Performs the check for the Yii core requirements. | YiiRequirementChecker |
compareByteSize() | Compare byte sizes of values given in the verbose representation, like '5M', '15K' etc. | YiiRequirementChecker |
evaluateExpression() | Evaluates a PHP expression under the context of this class. | YiiRequirementChecker |
getByteSize() | Gets the size in bytes from verbose size representation. | YiiRequirementChecker |
getNowDate() | Returns the now date if possible in string representation. | YiiRequirementChecker |
getResult() | Return the check results. | YiiRequirementChecker |
getServerInfo() | Returns the server information. | YiiRequirementChecker |
normalizeRequirement() | Normalizes requirement ensuring it has correct format. | YiiRequirementChecker |
render() | Renders the requirements check result. | YiiRequirementChecker |
renderViewFile() | Renders a view file. | YiiRequirementChecker |
usageError() | Displays a usage error. | YiiRequirementChecker |
Check the given requirements, collecting results into internal field.
This method can be invoked several times checking different requirement sets. Use getResult() or render() to get the results.
public $this check ( $requirements ) | ||
---|---|---|
$requirements | array|string |
Requirements to be checked. If an array, it is treated as the set of requirements; If a string, it is treated as the path of the file, which contains the requirements; |
return | $this |
Self instance. |
Checks if the given PHP extension is available and its version matches the given one.
public boolean checkPhpExtensionVersion ( $extensionName, $version, $compare = '>=' ) | ||
---|---|---|
$extensionName | string |
PHP extension name. |
$version | string |
Required PHP extension version. |
$compare | string |
Comparison operator, by default '>=' |
return | boolean |
If PHP extension version matches. |
Checks if PHP configuration option (from php.ini) is off.
public boolean checkPhpIniOff ( $name ) | ||
---|---|---|
$name | string |
Configuration option name. |
return | boolean |
Option is off. |
Checks if PHP configuration option (from php.ini) is on.
public boolean checkPhpIniOn ( $name ) | ||
---|---|---|
$name | string |
Configuration option name. |
return | boolean |
Option is on. |
Checks if upload max file size matches the given range.
public boolean checkUploadMaxFileSize ( $min = null, $max = null ) | ||
---|---|---|
$min | string|null |
Verbose file size minimum required value, pass null to skip minimum check. |
$max | string|null |
Verbose file size maximum required value, pass null to skip maximum check. |
return | boolean |
Success. |
Performs the check for the Yii core requirements.
public YiiRequirementChecker checkYii ( ) | ||
---|---|---|
return | YiiRequirementChecker |
Self instance. |
Compare byte sizes of values given in the verbose representation, like '5M', '15K' etc.
public boolean compareByteSize ( $a, $b, $compare = '>=' ) | ||
---|---|---|
$a | string |
First value. |
$b | string |
Second value. |
$compare | string |
Comparison operator, by default '>='. |
return | boolean |
Comparison result. |
Evaluates a PHP expression under the context of this class.
public mixed evaluateExpression ( $expression ) | ||
---|---|---|
$expression | string |
A PHP expression to be evaluated. |
return | mixed |
The expression result. |
Gets the size in bytes from verbose size representation.
For example: '5K' => 5*1024
public integer getByteSize ( $verboseSize ) | ||
---|---|---|
$verboseSize | string |
Verbose size representation. |
return | integer |
Actual size in bytes. |
Returns the now date if possible in string representation.
public string getNowDate ( ) | ||
---|---|---|
return | string |
Now date. |
Return the check results.
public array|null getResult ( ) | ||
---|---|---|
return | array|null |
Check results in format: array( 'summary' => array( 'total' => total number of checks, 'errors' => number of errors, 'warnings' => number of warnings, ), 'requirements' => array( array( ... 'error' => is there an error, 'warning' => is there a warning, ), ... ), ) |
Returns the server information.
public string getServerInfo ( ) | ||
---|---|---|
return | string |
Server information. |
Normalizes requirement ensuring it has correct format.
public array normalizeRequirement ( $requirement, $requirementKey = 0 ) | ||
---|---|---|
$requirement | array |
Raw requirement. |
$requirementKey | integer |
Requirement key in the list. |
return | array |
Normalized requirement. |
Renders the requirements check result.
The output will vary depending is a script running from web or from console.
public void render ( ) |
---|
Renders a view file.
This method includes the view file as a PHP script and captures the display result if required.
public string renderViewFile ( $_viewFile_, $_data_ = null, $_return_ = false ) | ||
---|---|---|
$_viewFile_ | string |
View file |
$_data_ | array |
Data to be extracted and made available to the view file |
$_return_ | boolean |
Whether the rendering result should be returned as a string |
return | string |
The rendering result. Null if the rendering result is not required. |
Displays a usage error.
This method will then terminate the execution of the current application.
public void usageError ( $message ) | ||
---|---|---|
$message | string |
The error message |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yiirequirementchecker.html