stream_get_contents
是 PHP 中的一个函数,用于从给定的流中读取数据,并将其作为字符串返回。这个函数在处理文件、网络套接字、数据流等资源时非常有用。以下是一些使用技巧:
$filename = 'example.txt';
$content = stream_get_contents($filename);
echo $content;
$host = 'www.example.com';
$port = 80;
$context = stream_context_create([
'http' => [
'method' => 'GET',
'timeout' => 10
]
]);
$content = stream_get_contents("http://{$host}:{$port}", false, $context);
echo $content;
$resource = fopen('php://input', 'r');
$content = stream_get_contents($resource);
fclose($resource);
echo $content;
stream_context_create
自定义 HTTP 请求头:$options = [
'http' => [
'method' => 'GET',
'header' => 'User-Agent: MyCustomUserAgent\r\n'
]
];
$context = stream_context_create($options);
$content = stream_get_contents('http://www.example.com', false, $context);
echo $content;
stream_get_contents
读取多个流:$file1 = fopen('example1.txt', 'r');
$file2 = fopen('example2.txt', 'r');
$content1 = stream_get_contents($file1);
$content2 = stream_get_contents($file2);
fclose($file1);
fclose($file2);
echo $content1 . $content2;
stream_get_contents
与 file_get_contents
的比较:file_get_contents
是一个内置函数,用于读取文件内容。与 stream_get_contents
相比,file_get_contents
更简洁。但是,stream_get_contents
提供了更大的灵活性,因为它可以处理任何类型的数据流。
总之,stream_get_contents
是一个功能强大的函数,可以帮助你轻松地处理各种数据流。在使用时,可以根据实际需求选择合适的技巧。