没有命名空间的类 yii yii\base yii\behaviors yii\caching yii\captcha yii\console yii\console\controllers yii\console\widgets yii\data yii\db yii\db\conditions yii\db\cubrid yii\db\cubrid\conditions yii\db\mssql yii\db\mssql\conditions yii\db\mysql yii\db\oci yii\db\oci\conditions yii\db\pgsql yii\db\sqlite yii\db\sqlite\conditions yii\di yii\filters yii\filters\auth yii\grid yii\helpers yii\i18n yii\log yii\mail yii\mutex yii\rbac yii\rest yii\test yii\validators yii\web yii\widgets

Class YiiRequirementChecker

继承YiiRequirementChecker
可用版本自2.0
源码 https://github.com/yiichina/yii2/blob/api/framework/requirements/YiiRequirementChecker.php

YiiRequirementChecker 允许检查,如果当前系统满足运行 Yii 应用程序的要求。 此类允许渲染 web 和控制台应用程序界面的检查报告。

例如:

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 expression" 格式。 在这种情况下,将在此类实例的上下文中计算指定的 PHP 表达式。 例如:

$requirements = array(
    array(
        'name' => 'Upload max file size',
        'condition' => 'eval:$this->checkUploadMaxFileSize("5M")',
    ),
);

Note: 这个类定义与普通的 Yii 样式不匹配,因为它应该与 PHP 4.3 匹配,不应该使用较新的PHP版本的功能!

公共方法

隐藏继承的方法

方法描述被定义在
check() 检查给定的需求,将结果收集到内部字段中。 可以多次调用此方法来检查不同的需求集。 使用 getResult()render() 来获得结果 YiiRequirementChecker
checkPhpExtensionVersion() 检查给定的 PHP 扩展是否可用且其版本是否与给定的版本匹配。 YiiRequirementChecker
checkPhpIniOff() 检查 PHP 配置选项(来自 php.ini)是否关闭。 YiiRequirementChecker
checkPhpIniOn() 检查 PHP 配置选项(来自 php.ini)是否打开。 YiiRequirementChecker
checkUploadMaxFileSize() 检查上传的最大文件大小是否与给定范围匹配。 YiiRequirementChecker
checkYii() 执行 Yii 核心要求的检查。 YiiRequirementChecker
compareByteSize() 比较详细表示中给出的值的字节大小, 例如:'5M','15K' 等。 YiiRequirementChecker
evaluateExpression() 在此类的上下文中计算 PHP 表达式。 YiiRequirementChecker
getByteSize() 从详细大小表示中获取大小(以字节为单位)。 例如:'5K' => 5*1024 YiiRequirementChecker
getNowDate() 如果可能,以字符串表示形式返回当前时间。 YiiRequirementChecker
getResult() 返回检查结果。 YiiRequirementChecker
getServerInfo() 返回服务器信息。 YiiRequirementChecker
normalizeRequirement() 规范化需求以确保其格式正确。 YiiRequirementChecker
render() 渲染需求检查结果。 输出将根据从 web 或控制台运行的脚本而有所不同。 YiiRequirementChecker
renderViewFile() 渲染一个视图文件。 此方法将视图文件包含为 PHP 脚本, 并在需要时捕获显示结果。 YiiRequirementChecker
usageError() 显示使用错误。 然后,此方法将终止当前应用程序的执行。 YiiRequirementChecker

方法详情

check() 公共 方法

检查给定的需求,将结果收集到内部字段中。 可以多次调用此方法来检查不同的需求集。 使用 getResult()render() 来获得结果

public $this check($requirements)
$requirements array|string

要检查的需求。 如果是数组,则将其视为一组需求; 如果是字符串,则将其视为文件的路径,其中包含需求;

return $this

自身实例。

checkPhpExtensionVersion() 公共 方法

检查给定的 PHP 扩展是否可用且其版本是否与给定的版本匹配。

public boolean checkPhpExtensionVersion($extensionName, $version, $compare '>=')
$extensionName string

PHP 扩展名称。

$version string

必需的 PHP 扩展版本。

$compare string

比较运算符,默认为 '>='

return boolean

如果 PHP 扩展版本匹配。

checkPhpIniOff() 公共 方法

检查 PHP 配置选项(来自 php.ini)是否关闭。

public boolean checkPhpIniOff($name)
$name string

配置选项名称。

return boolean

选项已关闭。

checkPhpIniOn() 公共 方法

检查 PHP 配置选项(来自 php.ini)是否打开。

public boolean checkPhpIniOn($name)
$name string

配置选项名称。

return boolean

选项已开启。

checkUploadMaxFileSize() 公共 方法

检查上传的最大文件大小是否与给定范围匹配。

public boolean checkUploadMaxFileSize($min null, $max null)
$min string|null

上传文件大小最小要求值,传递 null 以跳过最小检查。

$max string|null

上传文件大小最大要求值,传递 null 以跳过最大检查。

return boolean

成功。

checkYii() 公共 方法

执行 Yii 核心要求的检查。

public YiiRequirementChecker checkYii()
return YiiRequirementChecker

自身实例。

compareByteSize() 公共 方法

比较详细表示中给出的值的字节大小, 例如:'5M','15K' 等。

public boolean compareByteSize($a, $b, $compare '>=')
$a string

第一个值。

$b string

第二个值。

$compare string

比较运算符,默认为 '>='。

return boolean

比较结果。

evaluateExpression() 公共 方法

在此类的上下文中计算 PHP 表达式。

public mixed evaluateExpression($expression)
$expression string

要计算的 PHP 表达式。

return mixed

表达式结果。

getByteSize() 公共 方法

从详细大小表示中获取大小(以字节为单位)。 例如:'5K' => 5*1024

public integer getByteSize($verboseSize)
$verboseSize string

详细的大小表示。

return integer

实际大小(字节)。

getNowDate() 公共 方法

如果可能,以字符串表示形式返回当前时间。

public string getNowDate()
return string

当前时间

getResult() 公共 方法

返回检查结果。

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 string getServerInfo()
return string

服务器信息。

normalizeRequirement() 公共 方法

规范化需求以确保其格式正确。

public array normalizeRequirement($requirement, $requirementKey 0)
$requirement array

原始需求。

$requirementKey integer

列表中的需求键。

return array

标准化需求。

render() 公共 方法

渲染需求检查结果。 输出将根据从 web 或控制台运行的脚本而有所不同。

public void render()
renderViewFile() 公共 方法

渲染一个视图文件。 此方法将视图文件包含为 PHP 脚本, 并在需要时捕获显示结果。

public string renderViewFile($_viewFile_, $_data_ null, $_return_ false)
$_viewFile_ string

视图文件

$_data_ array

要提取的数据并使其可用于视图文件

$_return_ boolean

是否应将渲染结果作为字符串返回

return string

渲染结果。如果不需要渲染结果,则为空。

usageError() 公共 方法

显示使用错误。 然后,此方法将终止当前应用程序的执行。

public void usageError($message)
$message string

错误消息