Ejemplo n.º 1
0
Archivo: X.php Proyecto: mage2pro/core
 /**
  * @param array(string => string) $attributes
  * @return $this
  */
 public function addAttributes(array $attributes)
 {
     foreach ($attributes as $name => $value) {
         /** @var string $name */
         /** @var mixed $value */
         df_assert_string($name);
         // убрал strval($value) для ускорения системы
         if (is_object($value) || is_array($value)) {
             df_log($attributes);
             df_error('Значение поля «%s» должно быть строкой, однако является %s.', $name, is_object($value) ? sprintf('объектом класса %s', get_class($value)) : 'массивом');
         }
         $this->addAttribute($name, $value);
     }
     return $this;
 }
Ejemplo n.º 2
0
/**
 * @param string $v
 * @param int $stackLevel [optional]
 * @return void
 * @throws DFE
 */
function df_assert_string_not_empty($v, $stackLevel = 0)
{
    df_assert_string($v, $stackLevel + 1);
    if (df_enable_assertions()) {
        Q::assertValueIsString($v, $stackLevel + 1);
        /**
         * Раньше тут стояло if (!$v), что тоже неправильно,
         * ибо непустая строка '0' не проходит такую валидацию.
         */
        if ('' === strval($v)) {
            Q::raiseErrorVariable($validatorClass = __FUNCTION__, $messages = ['Требуется непустая строка, но вместо неё получена пустая.'], $stackLevel + 1);
        }
    }
}