src/Guzzle/Service/Description/SchemaValidator.php
protected function determineType($type, $value)
    {
        foreach ((array) $type as $t) {
            if ($t == 'string' && (is_string($value) || (is_object($value) && method_exists($value, '__toString')))) {
                return 'string';
            } elseif ($t == 'object' && (is_array($value) || is_object($value))) {
                return 'object';
            } elseif ($t == 'array' && is_array($value)) {
                return 'array';
            } elseif ($t == 'integer' && is_integer($value)) {
                return 'integer';
            } elseif ($t == 'boolean' && is_bool($value)) {
                return 'boolean';
            } elseif ($t == 'number' && is_numeric($value)) {
                return 'number';
            } elseif ($t == 'numeric' && is_numeric($value)) {
                return 'numeric';
            } elseif ($t == 'null' && !$value) {
                return 'null';
            } elseif ($t == 'any') {
                return 'any';
            }
        }

        return false;
    }
protected function determineType($type, $value)
    {
        foreach ((array) $type as $t) {
            if ($t == 'string' && (is_string($value) || (is_object($value) && method_exists($value, '__toString')))) {
                return 'string';
            } elseif ($t == 'object' && (is_array($value) || is_object($value))) {
                return 'object';
            } elseif ($t == 'array' && is_array($value)) {
                return 'array';
            } elseif ($t == 'integer' && is_integer($value)) {
                return 'integer';
            } elseif ($t == 'boolean' && is_bool($value)) {
                return 'boolean';
            } elseif ($t == 'number' && is_numeric($value)) {
                return 'number';
            } elseif ($t == 'numeric' && is_numeric($value)) {
                return 'numeric';
            } elseif ($t == 'null' && !$value) {
                return 'null';
            } elseif ($t == 'any') {
                return 'any';
            }
        }

        return false;
    }
protected function determineType ( $ type , $ value ) { foreach ( ( array ) $ type as $ t ) { if ( $ t == 'string' && ( is_string ( $ value ) || ( is_object ( $ value ) && method_exists ( $ value , '__toString' ) ) ) ) { return 'string' ; } elseif ( $ t == 'object' && ( is_array ( $ value ) || is_object ( $ value ) ) ) { return 'object' ; } elseif ( $ t == 'array' && is_array ( $ value ) ) { return 'array' ; } elseif ( $ t == 'integer' && is_integer ( $ value ) ) { return 'integer' ; } elseif ( $ t == 'boolean' && is_bool ( $ value ) ) { return 'boolean' ; } elseif ( $ t == 'number' && is_numeric ( $ value ) ) { return 'number' ; } elseif ( $ t == 'numeric' && is_numeric ( $ value ) ) { return 'numeric' ; } elseif ( $ t == 'null' && ! $ value ) { return 'null' ; } elseif ( $ t == 'any' ) { return 'any' ; } } return false ; }
From the allowable types, determine the type that the variable matches

@param string $type  Parameter type
@param mixed  $value Value to determine the type

@return string|bool Returns the matching type on
From the allowable types determine the type that the variable matches