101 satır
4.7KB

  1. <?php
  2. /**
  3. * These are the Yii core requirements for the [[YiiRequirementChecker]] instance.
  4. * These requirements are mandatory for any Yii application.
  5. */
  6. /* @var $this YiiRequirementChecker */
  7. return array(
  8. array(
  9. 'name' => 'PHP version',
  10. 'mandatory' => true,
  11. 'condition' => version_compare(PHP_VERSION, '5.4.0', '>='),
  12. 'by' => '<a href="http://www.yiiframework.com">Yii Framework</a>',
  13. 'memo' => 'PHP 5.4.0 or higher is required.',
  14. ),
  15. array(
  16. 'name' => 'Reflection extension',
  17. 'mandatory' => true,
  18. 'condition' => class_exists('Reflection', false),
  19. 'by' => '<a href="http://www.yiiframework.com">Yii Framework</a>',
  20. ),
  21. array(
  22. 'name' => 'PCRE extension',
  23. 'mandatory' => true,
  24. 'condition' => extension_loaded('pcre'),
  25. 'by' => '<a href="http://www.yiiframework.com">Yii Framework</a>',
  26. ),
  27. array(
  28. 'name' => 'SPL extension',
  29. 'mandatory' => true,
  30. 'condition' => extension_loaded('SPL'),
  31. 'by' => '<a href="http://www.yiiframework.com">Yii Framework</a>',
  32. ),
  33. array(
  34. 'name' => 'Ctype extension',
  35. 'mandatory' => true,
  36. 'condition' => extension_loaded('ctype'),
  37. 'by' => '<a href="http://www.yiiframework.com">Yii Framework</a>'
  38. ),
  39. array(
  40. 'name' => 'MBString extension',
  41. 'mandatory' => true,
  42. 'condition' => extension_loaded('mbstring'),
  43. 'by' => '<a href="http://www.php.net/manual/en/book.mbstring.php">Multibyte string</a> processing',
  44. 'memo' => 'Required for multibyte encoding string processing.'
  45. ),
  46. array(
  47. 'name' => 'OpenSSL extension',
  48. 'mandatory' => false,
  49. 'condition' => extension_loaded('openssl'),
  50. 'by' => '<a href="http://www.yiiframework.com/doc-2.0/yii-base-security.html">Security Component</a>',
  51. 'memo' => 'Required by encrypt and decrypt methods.'
  52. ),
  53. array(
  54. 'name' => 'Intl extension',
  55. 'mandatory' => false,
  56. 'condition' => $this->checkPhpExtensionVersion('intl', '1.0.2', '>='),
  57. 'by' => '<a href="http://www.php.net/manual/en/book.intl.php">Internationalization</a> support',
  58. 'memo' => 'PHP Intl extension 1.0.2 or higher is required when you want to use advanced parameters formatting
  59. in <code>Yii::t()</code>, non-latin languages with <code>Inflector::slug()</code>,
  60. <abbr title="Internationalized domain names">IDN</abbr>-feature of
  61. <code>EmailValidator</code> or <code>UrlValidator</code> or the <code>yii\i18n\Formatter</code> class.'
  62. ),
  63. array(
  64. 'name' => 'ICU version',
  65. 'mandatory' => false,
  66. 'condition' => defined('INTL_ICU_VERSION') && version_compare(INTL_ICU_VERSION, '49', '>='),
  67. 'by' => '<a href="http://www.php.net/manual/en/book.intl.php">Internationalization</a> support',
  68. 'memo' => 'ICU 49.0 or higher is required when you want to use <code>#</code> placeholder in plural rules
  69. (for example, plural in
  70. <a href=\"http://www.yiiframework.com/doc-2.0/yii-i18n-formatter.html#asRelativeTime%28%29-detail\">
  71. Formatter::asRelativeTime()</a>) in the <code>yii\i18n\Formatter</code> class. Your current ICU version is ' .
  72. (defined('INTL_ICU_VERSION') ? INTL_ICU_VERSION : '(ICU is missing)') . '.'
  73. ),
  74. array(
  75. 'name' => 'ICU Data version',
  76. 'mandatory' => false,
  77. 'condition' => defined('INTL_ICU_DATA_VERSION') && version_compare(INTL_ICU_DATA_VERSION, '49.1', '>='),
  78. 'by' => '<a href="http://www.php.net/manual/en/book.intl.php">Internationalization</a> support',
  79. 'memo' => 'ICU Data 49.1 or higher is required when you want to use <code>#</code> placeholder in plural rules
  80. (for example, plural in
  81. <a href=\"http://www.yiiframework.com/doc-2.0/yii-i18n-formatter.html#asRelativeTime%28%29-detail\">
  82. Formatter::asRelativeTime()</a>) in the <code>yii\i18n\Formatter</code> class. Your current ICU Data version is ' .
  83. (defined('INTL_ICU_DATA_VERSION') ? INTL_ICU_DATA_VERSION : '(ICU Data is missing)') . '.'
  84. ),
  85. array(
  86. 'name' => 'Fileinfo extension',
  87. 'mandatory' => false,
  88. 'condition' => extension_loaded('fileinfo'),
  89. 'by' => '<a href="http://www.php.net/manual/en/book.fileinfo.php">File Information</a>',
  90. 'memo' => 'Required for files upload to detect correct file mime-types.'
  91. ),
  92. array(
  93. 'name' => 'DOM extension',
  94. 'mandatory' => false,
  95. 'condition' => extension_loaded('dom'),
  96. 'by' => '<a href="http://php.net/manual/en/book.dom.php">Document Object Model</a>',
  97. 'memo' => 'Required for REST API to send XML responses via <code>yii\web\XmlResponseFormatter</code>.'
  98. ),
  99. );