예제 #1
0
파일: Context.php 프로젝트: mage2pro/core
 /**
  * @used-by \Df\Qa\Message::report()
  * @return string
  */
 public static function render()
 {
     /** @var string $result */
     // 2015-09-02
     // Warning: max(): Array must contain at least one element
     if (!self::$_items) {
         $result = '';
     } else {
         /** @uses \Df\Qa\Context::sort() */
         uasort(self::$_items, [__CLASS__, 'sort']);
         /** @var int $padSize */
         $padSize = 2 + max(array_map('mb_strlen', array_keys(self::$_items)));
         /** @var string[] $rows */
         $rows = [];
         foreach (self::$_items as $label => $item) {
             /** @var string $label */
             /** @var array(string => string|int) $item */
             $rows[] = df_pad($label . ':', $padSize) . $item[self::$VALUE];
         }
         $result = df_cc_n($rows);
     }
     return $result;
 }
예제 #2
0
파일: State.php 프로젝트: mage2pro/core
 /**
  * Этот метод может быть приватным,
  * несмотря на использование его как callable,
  * потому что он используется как callable только внутри своего класса:
  * @used-by __toString()
  * http://php.net/manual/language.types.callable.php#113447
  * Проверял, что это действительно допустимо, на различных версиях интерпретатора PHP:
  * http://3v4l.org/OipEQ
  * @param array $param
  * @return string|null
  */
 private static function param(array $param)
 {
     /** @var string|null $result */
     /** @var string|null $value */
     $value = $param[1];
     if (!$value) {
         $result = null;
     } else {
         /** @var string $label */
         $label = $param[0];
         /** @var string $pad */
         $pad = df_pad(' ', 12 - mb_strlen($label));
         $result = "{$label}:{$pad}{$value}";
     }
     return $result;
 }