Класс YiiRequirementChecker
| Наследование | YiiRequirementChecker |
|---|---|
| Доступно с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/equirementChecker.php |
Класс YiiRequirementChecker позволяет проверить, соответствует ли текущая система требованиям для запуска приложения Yii.
Этот класс позволяет отобразить отчет о проверке для веб- и консольных интерфейсов приложения.
Пример:
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();
Если вы хотите отобразить отчет с вашей собственной структурой, используйте getResult() вместо render()
Условие требования может быть в формате "eval:PHP выражение". В этом случае указанное PHP выражение будет вычислено в контексте экземпляра этого класса. Например:
$requirements = array(
array(
'name' => 'Upload max file size',
'condition' => 'eval:$this->checkUploadMaxFileSize("5M")',
),
);
Примечание: определение этого класса не соответствует обычному стилю Yii, так как оно должно соответствовать PHP 4.3 и не должно использовать функции более новых версий PHP!
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| check() | Проверяет заданные требования, собирая результаты во внутреннее поле. | YiiRequirementChecker |
| checkPhpExtensionVersion() | Проверяет, доступен ли заданный PHP расширение и соответствует ли его версия заданной. | YiiRequirementChecker |
| checkPhpIniOff() | Проверяет, выключен ли параметр конфигурации PHP (из php.ini). | YiiRequirementChecker |
| checkPhpIniOn() | Проверяет, включен ли параметр конфигурации PHP (из php.ini). | YiiRequirementChecker |
| checkUploadMaxFileSize() | Проверяет, соответствует ли максимальный размер загружаемого файла заданному диапазону. | YiiRequirementChecker |
| checkYii() | Выполняет проверку требований к ядру Yii. | YiiRequirementChecker |
| compareByteSize() | Сравнивает размеры значений в подробном представлении, таких как '5М', '15К' и т. д. | YiiRequirementChecker |
| evaluateExpression() | Вычисляет PHP выражение в контексте этого класса. | YiiRequirementChecker |
| getByteSize() | Получает размер в байтах из представления размера в подробном формате. | YiiRequirementChecker |
| getNowDate() | Возвращает текущую дату, если возможно, в строковом представлении. | YiiRequirementChecker |
| getResult() | Возвращает результаты проверки. | YiiRequirementChecker |
| getServerInfo() | Возвращает информацию о сервере. | YiiRequirementChecker |
| normalizeRequirement() | Нормализует требование, обеспечивая правильный формат. | YiiRequirementChecker |
| render() | Отображает результат проверки требований. | YiiRequirementChecker |
| renderViewFile() | Отображает файл представления. | YiiRequirementChecker |
| usageError() | Отображает ошибку использования. | YiiRequirementChecker |
Подробное описание методов
check() public method
Проверяет заданные требования, собирая результаты во внутреннее поле.
Этот метод можно вызывать несколько раз, проверяя различные наборы требований. Используйте getResult() или render() для получения результатов.
| public $this check ( $requirements ) | ||
|---|---|---|
| $requirements | array|string |
Требования, которые необходимо проверить. Если массив, он обрабатывается как набор требований; если строка, она обрабатывается как путь к файлу, содержащему требования; |
| return | $this |
Экземпляр класса. |
checkPhpExtensionVersion() public method
Проверяет, доступен ли данный PHP-расширение и соответствует ли его версия заданной.
| public boolean checkPhpExtensionVersion ( $extensionName, $version, $compare = '>=' ) | ||
|---|---|---|
| $extensionName | string |
Имя PHP-расширения. |
| $version | string |
Требуемая версия PHP-расширения. |
| $compare | string |
Оператор сравнения, по умолчанию '>='; |
| return | boolean |
Соответствует ли версия PHP-расширения. |
checkPhpIniOff() public method
Проверяет, выключен ли параметр конфигурации PHP (из php.ini).
| public boolean checkPhpIniOff ( $name ) | ||
|---|---|---|
| $name | string |
Имя параметра конфигурации. |
| return | boolean |
Параметр выключен. |
checkPhpIniOn() public method
Проверяет, включен ли параметр конфигурации PHP (из php.ini).
| public boolean checkPhpIniOn ( $name ) | ||
|---|---|---|
| $name | string |
Имя параметра конфигурации. |
| return | boolean |
Параметр включен. |
checkUploadMaxFileSize() public method
Проверяет, соответствует ли максимальный размер загружаемого файла заданному диапазону.
| public boolean checkUploadMaxFileSize ( $min = null, $max = null ) | ||
|---|---|---|
| $min | string|null |
Минимальное значение размера файла в удобочитаемом формате, передайте null, чтобы пропустить проверку минимума. |
| $max | string|null |
Максимальное значение размера файла в удобочитаемом формате, передайте null, чтобы пропустить проверку максимума. |
| return | boolean |
Успех. |
checkYii() public method
Выполняет проверку требований к ядру Yii.
| public YiiRequirementChecker checkYii ( ) | ||
|---|---|---|
| return | YiiRequirementChecker |
Экземпляр класса. |
compareByteSize() public method
Сравнивает размер файлов в байтах, представленных в удобочитаемом формате, например, '5M', '15K' и т. д.
| public boolean compareByteSize ( $a, $b, $compare = '>=' ) | ||
|---|---|---|
| $a | string |
Первое значение. |
| $b | string |
Второе значение. |
| $compare | string |
Оператор сравнения, по умолчанию '>='; |
| return | boolean |
Результат сравнения. |
evaluateExpression() public method
Вычисляет PHP-выражение в контексте этого класса.
| public mixed evaluateExpression ( $expression ) | ||
|---|---|---|
| $expression | string |
PHP-выражение, которое нужно вычислить. |
| return | mixed |
Результат выражения. |
getByteSize() public method
Получает размер в байтах из представления размера в удобочитаемом формате.
Например: '5K' => 5*1024
| public integer getByteSize ( $verboseSize ) | ||
|---|---|---|
| $verboseSize | string |
Представление размера в удобочитаемом формате. |
| return | integer |
Фактический размер в байтах. |
getNowDate() public method
Возвращает текущую дату в строковом представлении, если это возможно.
| public string getNowDate ( ) | ||
|---|---|---|
| return | string |
Текущая дата. |
getResult() public method
Возвращает результаты проверки.
| public array|null getResult ( ) | ||
|---|---|---|
| return | array|null |
Результаты проверки в формате: 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,
),
...
),
)
|
getServerInfo() public method
Возвращает информацию о сервере.
| public string getServerInfo ( ) | ||
|---|---|---|
| return | string |
Информация о сервере. |
normalizeRequirement() public method
Нормализует требование, обеспечивая правильный формат.
| public array normalizeRequirement ( $requirement, $requirementKey = 0 ) | ||
|---|---|---|
| $requirement | array |
Исходное требование. |
| $requirementKey | integer |
Ключ требования в списке. |
| return | array |
Нормализованное требование. |
render() public method
Отображает результат проверки требований.
Вывод будет отличаться в зависимости от того, выполняется ли скрипт из веб-приложения или консоли.
| public void render ( ) |
|---|
renderViewFile() public method
Отображает файл представления.
Этот метод включает файл представления как PHP-скрипт и, при необходимости, сохраняет результат отображения.
| public string renderViewFile ( $_viewFile_, $_data_ = null, $_return_ = false ) | ||
|---|---|---|
| $_viewFile_ | string |
Файл представления |
| $_data_ | array |
Данные, которые нужно извлечь и сделать доступными файлу представления |
| $_return_ | boolean |
Нужно ли возвращать результат отображения в виде строки |
| return | string |
Результат отображения. Null, если результат отображения не требуется. |
usageError() public method
Отображает ошибку использования.
Этот метод затем завершит выполнение текущего приложения.
| public void usageError ( $message ) | ||
|---|---|---|
| $message | string |
Сообщение об ошибке |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yiirequirementchecker.html