이 기사의 내용은 PHP의 입력 및 출력 스트림에 관한 것입니다. 도움이 필요한 친구가 참조할 수 있습니다.
오늘 PHPCHINA에서 누군가 PHP에서 XML을 전송하는 방법을 물었습니다. , 해당 솔루션이 위에 제공되었습니다. 그런데 PHP의 입력 및 출력 스트림에 대해 이야기해 보겠습니다.
여름방학 때 회사에 있을 때 동료들이 스트리밍 미디어를 만들기 위해 우연히 Flash를 사용하고 있었는데, FLASH에서 전달한 미디어 정보(역시 XML 형식)를 읽으려면 PHP를 사용해야 했습니다. 또한 PHP의 기본 입력 및 출력 스트림 원리에 대해서도 잘 알고 있었습니다.
설명서에는 다음과 같이 나와 있습니다.
PHP 3.0.13 이상에서는 PHP 4.3.0부터 php://output 및 php://input을 지원하고 PHP 5.0.0부터 php://filter를 지원합니다.
php://stdin
php://stdout
php://stderr
php://output
php://input
php://filter
php://stdin , php://stdout 및 php://stderr을 사용하면 PHP 프로세스의 해당 입력 또는 출력 스트림에 액세스할 수 있습니다.
php://output을 사용하면 print() 및 echo()와 동일한 방식으로 출력 버퍼링 메커니즘에 데이터를 쓸 수 있습니다.
php://input을 사용하면 POST의 원시 데이터를 읽을 수 있습니다. $HTTP_RAW_POST_DATA보다 메모리에 대한 부담이 적고 특별한 php.ini 설정이 필요하지 않습니다. php://input은 enctype="multipart/form-data"와 함께 사용할 수 없습니다.
php://stdin 및 php://input은 읽기 전용이고, php://stdout, php://stderr 및 php://output은 쓰기 전용입니다.
php://filter는 필터 프로그램이 열릴 때 스트림이 될 수 있도록 설계된 래퍼 프로토콜입니다. 이는 자체적으로 전체 기능을 갖는 readfile(), file() 및 file_get_contents()와 같은 파일 함수에 유용합니다. 그렇지 않으면 내용을 읽기 전에 스트림 위에 필터를 적용할 기회가 없기 때문입니다.
즉, 게시물의 원본 데이터가 php://input이라는 파일에 저장됩니다. 간단한 파일 조작을 통해 내부의 데이터를 읽어 제어할 수 있습니다.
$data=file_get_contents(php://input);
관련 권장 사항:
php 입력 및 출력 스트림 샘플 코드 세부 정보(그림)
위 내용은 PHP의 입력 및 출력 스트림 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!