12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- <?php
- namespace Zend\Stdlib\Guard;
- use Traversable;
- abstract class GuardUtils
- {
- const DEFAULT_EXCEPTION_CLASS = 'Zend\Stdlib\Exception\InvalidArgumentException';
-
- public static function guardForArrayOrTraversable(
- $data,
- $dataName = 'Argument',
- $exceptionClass = self::DEFAULT_EXCEPTION_CLASS
- ) {
- if (!is_array($data) && !($data instanceof Traversable)) {
- $message = sprintf(
- '%s must be an array or Traversable, [%s] given',
- $dataName,
- is_object($data) ? get_class($data) : gettype($data)
- );
- throw new $exceptionClass($message);
- }
- }
-
- public static function guardAgainstEmpty(
- $data,
- $dataName = 'Argument',
- $exceptionClass = self::DEFAULT_EXCEPTION_CLASS
- ) {
- if (empty($data)) {
- $message = sprintf('%s cannot be empty', $dataName);
- throw new $exceptionClass($message);
- }
- }
-
- public static function guardAgainstNull(
- $data,
- $dataName = 'Argument',
- $exceptionClass = self::DEFAULT_EXCEPTION_CLASS
- ) {
- if (null === $data) {
- $message = sprintf('%s cannot be null', $dataName);
- throw new $exceptionClass($message);
- }
- }
- }
|