本文整理汇总了PHP中FileBackend::streamFile方法的典型用法代码示例。如果您正苦于以下问题:PHP FileBackend::streamFile方法的具体用法?PHP FileBackend::streamFile怎么用?PHP FileBackend::streamFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FileBackend
的用法示例。
在下文中一共展示了FileBackend::streamFile方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: streamFileWithStatus
/**
* Attempt to stream a file with the given virtual URL/storage path
*
* @param string $virtualUrl
* @param array $headers Additional HTTP headers to send on success
* @param array $optHeaders HTTP request headers (if-modified-since, range, ...)
* @return Status
* @since 1.27
*/
public function streamFileWithStatus($virtualUrl, $headers = [], $optHeaders = [])
{
$path = $this->resolveToStoragePath($virtualUrl);
$params = ['src' => $path, 'headers' => $headers, 'options' => $optHeaders];
$status = $this->newGood();
$status->merge($this->backend->streamFile($params));
return $status;
}
示例2: doTestStreamFileRange
private function doTestStreamFileRange()
{
$backendName = $this->backendClass();
$base = self::baseStorePath();
$path = "{$base}/unittest-cont1/e/b/z/range_file.txt";
$content = "0123456789ABCDEF";
$this->prepare(['dir' => dirname($path)]);
$status = $this->create(['dst' => $path, 'content' => $content]);
$this->assertGoodStatus($status, "Creation of file at {$path} succeeded ({$backendName}).");
static $ranges = ['bytes=0-0' => '0', 'bytes=0-3' => '0123', 'bytes=4-8' => '45678', 'bytes=15-15' => 'F', 'bytes=14-15' => 'EF', 'bytes=-5' => 'BCDEF', 'bytes=-1' => 'F', 'bytes=10-16' => 'ABCDEF', 'bytes=10-99' => 'ABCDEF'];
foreach ($ranges as $range => $chunk) {
ob_start();
$this->backend->streamFile(['src' => $path, 'headless' => 1, 'allowOB' => 1, 'options' => ['range' => $range]]);
$data = ob_get_contents();
ob_end_clean();
$this->assertEquals($chunk, $data, "Correct chunk streamed from '{$path}' for '{$range}'");
}
}
示例3: streamFile
/**
* Attempt to stream a file with the given virtual URL/storage path
*
* @param $virtualUrl string
* @param $headers Array Additional HTTP headers to send on success
* @return bool Success
*/
public function streamFile($virtualUrl, $headers = array())
{
$path = $this->resolveToStoragePath($virtualUrl);
$params = array('src' => $path, 'headers' => $headers);
return $this->backend->streamFile($params)->isOK();
}
示例4: streamFileWithStatus
/**
* Attempt to stream a file with the given virtual URL/storage path
*
* @param string $virtualUrl
* @param array $headers Additional HTTP headers to send on success
* @return Status
* @since 1.27
*/
public function streamFileWithStatus($virtualUrl, $headers = [])
{
$path = $this->resolveToStoragePath($virtualUrl);
$params = ['src' => $path, 'headers' => $headers];
return $this->backend->streamFile($params);
}