Compare commits

..

No commits in common. "master" and "5.0.1.back" have entirely different histories.

7 changed files with 19 additions and 51 deletions

View File

@ -17,10 +17,6 @@
"psr/http-server-handler": "~1.0", "psr/http-server-handler": "~1.0",
"psr/http-server-middleware": "~1.0" "psr/http-server-middleware": "~1.0"
}, },
"provide": {
"psr/http-message-implementation": "1.0",
"psr/http-factory-implementation": "1.0"
},
"autoload": { "autoload": {
"psr-4": { "psr-4": {
"WellRESTed\\": "src/" "WellRESTed\\": "src/"

View File

@ -7,7 +7,7 @@ use Iterator;
/** /**
* HeaderCollection provides case-insensitive access to lists of header values. * HeaderCollection provides case-insensitive access to lists of header values.
* **
* HeaderCollection preserves the cases of keys as they are set, but treats key * HeaderCollection preserves the cases of keys as they are set, but treats key
* access case insensitively. * access case insensitively.
* *
@ -51,7 +51,7 @@ class HeaderCollection implements ArrayAccess, Iterator
* @param string $offset * @param string $offset
* @return bool * @return bool
*/ */
public function offsetExists($offset): bool public function offsetExists($offset)
{ {
return isset($this->values[strtolower($offset)]); return isset($this->values[strtolower($offset)]);
} }
@ -60,7 +60,7 @@ class HeaderCollection implements ArrayAccess, Iterator
* @param mixed $offset * @param mixed $offset
* @return string[] * @return string[]
*/ */
public function offsetGet($offset): array public function offsetGet($offset)
{ {
return $this->values[strtolower($offset)]; return $this->values[strtolower($offset)];
} }
@ -69,7 +69,7 @@ class HeaderCollection implements ArrayAccess, Iterator
* @param string $offset * @param string $offset
* @param string $value * @param string $value
*/ */
public function offsetSet($offset, $value): void public function offsetSet($offset, $value)
{ {
$normalized = strtolower($offset); $normalized = strtolower($offset);
@ -92,7 +92,7 @@ class HeaderCollection implements ArrayAccess, Iterator
/** /**
* @param string $offset * @param string $offset
*/ */
public function offsetUnset($offset): void public function offsetUnset($offset)
{ {
$normalized = strtolower($offset); $normalized = strtolower($offset);
unset($this->fields[$normalized]); unset($this->fields[$normalized]);
@ -107,30 +107,27 @@ class HeaderCollection implements ArrayAccess, Iterator
// ------------------------------------------------------------------------- // -------------------------------------------------------------------------
// Iterator // Iterator
/** public function current()
* @return string[]
*/
public function current(): array
{ {
return $this->values[$this->keys[$this->position]]; return $this->values[$this->keys[$this->position]];
} }
public function next(): void public function next()
{ {
++$this->position; ++$this->position;
} }
public function key(): string public function key()
{ {
return $this->fields[$this->keys[$this->position]]; return $this->fields[$this->keys[$this->position]];
} }
public function valid(): bool public function valid()
{ {
return isset($this->keys[$this->position]); return isset($this->keys[$this->position]);
} }
public function rewind(): void public function rewind()
{ {
$this->position = 0; $this->position = 0;
} }

View File

@ -195,7 +195,7 @@ class Request extends Message implements RequestInterface
$request = clone $this; $request = clone $this;
$newHost = $uri->getHost(); $newHost = $uri->getHost();
$oldHost = $request->headers['Host'] ?? ''; $oldHost = isset($request->headers['Host']) ? $request->headers['Host'] : '';
if ($preserveHost === false) { if ($preserveHost === false) {
// Update Host // Update Host

View File

@ -1,25 +0,0 @@
<?php
namespace WellRESTed\Message;
use Psr\Http\Message\RequestFactoryInterface;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\UriInterface;
class RequestFactory implements RequestFactoryInterface
{
/**
* Create a new request.
*
* @param string $method The HTTP method associated with the request.
* @param UriInterface|string $uri The URI associated with the request. If
* the value is a string, the factory MUST create a UriInterface
* instance based on it.
*
* @return RequestInterface
*/
public function createRequest(string $method, $uri): RequestInterface
{
return new Request($method, $uri);
}
}

View File

@ -117,21 +117,21 @@ class UploadedFile implements UploadedFileInterface
* *
* @see http://php.net/is_uploaded_file * @see http://php.net/is_uploaded_file
* @see http://php.net/move_uploaded_file * @see http://php.net/move_uploaded_file
* @param string $targetPath Path to which to move the uploaded file. * @param string $path Path to which to move the uploaded file.
* @return void * @return void
* @throws InvalidArgumentException if the $path specified is invalid. * @throws InvalidArgumentException if the $path specified is invalid.
* @throws RuntimeException on any error during the move operation, or on * @throws RuntimeException on any error during the move operation, or on
* the second or subsequent call to the method. * the second or subsequent call to the method.
*/ */
public function moveTo($targetPath) public function moveTo($path)
{ {
if ($this->tmpName === null || !file_exists($this->tmpName)) { if ($this->tmpName === null || !file_exists($this->tmpName)) {
throw new RuntimeException("File {$this->tmpName} does not exist."); throw new RuntimeException("File {$this->tmpName} does not exist.");
} }
if (php_sapi_name() === 'cli') { if (php_sapi_name() === 'cli') {
rename($this->tmpName, $targetPath); rename($this->tmpName, $path);
} else { } else {
move_uploaded_file($this->tmpName, $targetPath); move_uploaded_file($this->tmpName, $path);
} }
$this->moved = true; $this->moved = true;
} }

View File

@ -292,7 +292,7 @@ class Uri implements UriInterface
*/ */
public function withScheme($scheme) public function withScheme($scheme)
{ {
$scheme = strtolower($scheme ?? ''); $scheme = $scheme ? strtolower($scheme) : '';
if (!in_array($scheme, ['', 'http', 'https'])) { if (!in_array($scheme, ['', 'http', 'https'])) {
throw new InvalidArgumentException('Scheme must be http, https, or empty.'); throw new InvalidArgumentException('Scheme must be http, https, or empty.');
} }
@ -446,7 +446,7 @@ class Uri implements UriInterface
public function withFragment($fragment) public function withFragment($fragment)
{ {
$uri = clone $this; $uri = clone $this;
$uri->fragment = $fragment ?? ''; $uri->fragment = $fragment;
return $uri; return $uri;
} }
@ -520,7 +520,7 @@ class Uri implements UriInterface
* @param string $subject * @param string $subject
* @return string * @return string
*/ */
private function percentEncode(string $subject) private function percentEncode($subject)
{ {
$reserved = ':/?#[]@!$&\'()*+,;='; $reserved = ':/?#[]@!$&\'()*+,;=';
$reserved = preg_quote($reserved); $reserved = preg_quote($reserved);

View File

@ -278,7 +278,7 @@ class Router implements MiddlewareInterface
usort($matches, $compareByLength); usort($matches, $compareByLength);
} }
$bestMatch = array_values($matches)[0]; $bestMatch = $matches[0];
return $this->prefixRoutes[$bestMatch]; return $this->prefixRoutes[$bestMatch];
} }