GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — http/StreamFactory.php at 5.x · cakephp/http Expand file tree/ Copy pathStreamFactory.phpMore file actions 79 lines (72 loc) · 2.57 KB / Copy pathStreamFactory.phpFile metadata and controls79 lines (72 loc) · 2.57 KB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 <?php declare(strict_types=1); /** * CakePHP(tm) : Rapid Development Framework (https://cakephp.org) * Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org) * * Licensed under The MIT License * For full copyright and license information, please see the LICENSE.txt * Redistributions of files must retain the above copyright notice. * * @copyright Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org) * @link https://cakephp.org CakePHP(tm) Project * @since 5.0.0 * @license https://opensource.org/licenses/mit-license.php MIT License */ namespace Cake\Http; use Laminas\Diactoros\Stream; use Psr\Http\Message\StreamFactoryInterface; use Psr\Http\Message\StreamInterface; use RuntimeException; /** * Factory class for creating stream instances. */ class StreamFactory implements StreamFactoryInterface { /** * Create a new stream from a string. * * The stream SHOULD be created with a temporary resource. * * @param string $content String content with which to populate the stream. */ public function createStream(string $content = ''): StreamInterface { $resource = fopen('php://temp', 'r+'); assert($resource !== false, 'Unable to create resource'); fwrite($resource, $content); rewind($resource); return $this->createStreamFromResource($resource); } /** * Create a stream from an existing file. * * The file MUST be opened using the given mode, which may be any mode * supported by the `fopen` function. * * The `$filename` MAY be any string supported by `fopen()`. * * @param string $filename The filename or stream URI to use as basis of stream. * @param string $mode The mode with which to open the underlying filename/stream. * @throws \RuntimeException If the file cannot be opened. * @throws \InvalidArgumentException If the mode is invalid. */ public function createStreamFromFile(string $filename, string $mode = 'r'): StreamInterface { if (!is_readable($filename)) { throw new RuntimeException(sprintf('Cannot read file `%s`', $filename)); } return new Stream($filename, $mode); } /** * Create a new stream from an existing resource. * * The stream MUST be readable and may be writable. * * @param resource $resource The PHP resource to use as the basis for the stream. */ public function createStreamFromResource($resource): StreamInterface { return new Stream($resource); } } |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |