라이브러리

[PHP] SwooleHttpResponse::sendfile - HTTP 응답을 통해 파일을 전송합니다.




SwooleHttpResponse::sendfile


SwooleHttpResponse::sendfile은 PHP에서 Swoole를 사용하여 HTTP 요청을 처리할 때 파일을 클라이언트로 전송하는 데 사용되는 메소드입니다. 이 메소드는 파일을 전송하는 데 필요한 모든 작업을 자동으로 처리하여 개발자의 부담을 줄여줍니다.

사용법


SwooleHttpResponse::sendfile 메소드는 다음과 같은 형식으로 사용됩니다.

#hostingforum.kr
php

$response->sendfile($filePath, $offset = 0, $length = null);



- `$filePath`: 전송할 파일의 경로입니다.
- `$offset`: 파일을 읽기 시작할 위치입니다. 기본값은 0입니다.
- `$length`: 파일의 크기입니다. 기본값은 파일의 전체 크기입니다.

예제


다음 예제는 SwooleHttpResponse::sendfile 메소드를 사용하여 파일을 전송하는 방법을 보여줍니다.

#hostingforum.kr
php

use SwooleHttpRequest;

use SwooleHttpResponse;



function handleRequest(Request $request, Response $response)

{

    $filePath = '/path/to/file.txt';

    $response->sendfile($filePath);

}



$server = new SwooleHttpServer('127.0.0.1', 9501);

$server->on('request', function (Request $request, Response $response) {

    handleRequest($request, $response);

});

$server->start();



이 예제에서는 `/path/to/file.txt` 파일을 클라이언트로 전송합니다. 클라이언트가 파일을 전송받기 시작하면, 서버는 파일을 전송하는 동안 다른 작업을 수행할 수 있습니다.

오프셋과 길이


오프셋과 길이를 사용하여 파일의 특정 부분을 전송할 수 있습니다. 예를 들어, 다음 예제에서는 파일의 10KB부터 20KB까지 전송합니다.

#hostingforum.kr
php

use SwooleHttpRequest;

use SwooleHttpResponse;



function handleRequest(Request $request, Response $response)

{

    $filePath = '/path/to/file.txt';

    $response->sendfile($filePath, 10240, 10240);

}



$server = new SwooleHttpServer('127.0.0.1', 9501);

$server->on('request', function (Request $request, Response $response) {

    handleRequest($request, $response);

});

$server->start();



이 예제에서는 `/path/to/file.txt` 파일의 10KB부터 20KB까지 전송합니다.

결론


SwooleHttpResponse::sendfile 메소드는 PHP에서 Swoole를 사용하여 파일을 클라이언트로 전송하는 데 사용되는 메소드입니다. 이 메소드는 파일을 전송하는 데 필요한 모든 작업을 자동으로 처리하여 개발자의 부담을 줄여줍니다. 오프셋과 길이를 사용하여 파일의 특정 부분을 전송할 수 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 99 페이지

검색

게시물 검색