clean/assure

View on GitHub
src/assure/ArrayOfStringsCommand.php

Summary

Maintainability
A
25 mins
Test Coverage
A
100%
<?php namespace Assure;

class ArrayOfStringsCommand
{
    public function assure(&$value)
    {
        if (!$value) {
            throw new \InvalidArgumentException('Empty value given');
        }

        if (is_scalar($value)) {
            $value = array($value);
        } elseif ($value instanceof \stdClass) {
            $value = (array)$value;
        }

        foreach ($value as $key => $el) {
            if (!is_string($el)) {
                throw new \InvalidArgumentException('Invalid type given');
            }
        }
    }
}