-
file_get_contentsTechnique/PHP 2016. 4. 8. 12:01반응형
string file_get_contents ( string $filename [, bool $use_include_path = false [, resource $context [, int $offset = 0 [, int $maxlen ]]]] )
이 함수는 file()과 닮아 있지만, offset으로 지정한 장소에서 부터 시작해 maxlen 바이트 까지만 파일 내용을 문자열로 읽어들이는 점이 다릅니다.
실패한 경우 file_get_contens()와 FALSE를 반환합니다.
file_get_contents()는 파일의 내용을 문자열로 읽는 방법으로서 바람직합니다. 혹시 OS가 서포트하고 있다면 퍼포먼스 상향을 위하여 메모리 맵핑 기술이 사용됩니다.
주의 :
공백과 같은 특수한 문자를 가지고 있는 URI를 오픈할 경우에는 urlencode()로 해당 URL를 엔코드할 필요가 있습니다,
파라메터
filename
- 데이터를 읽어 들이고 싶은 파일명
use_include_path
- 주의 : PHP5 이후로부터 정수 FILE_USE_INCLUDE_PATH를 사용하여 include_path 로부터 검색하는 것이 가능합니다.
context
- stream_context_create()로 작성한 콘텍스트 리소스 독자적인 콘텍스트를 사용할 필요가 없는 경우에는 이 파라메터를 NULL로 지정해주세요.
offset
- 원래의 스트림상에, 읽기를 시작할 offset의 위치
- 리모트 파일에 대한 디스크상의 위치( offset 지정)는 대응하지 않습니다. offset이 작은경우는 리모트 파일로 디스크의 위치를 제대로 지정할 수 있지만 이것은 버퍼링이 걸린 스트림상에서 동작하고 있을 뿐입니다.
maxlen
- 읽기 데이터의 최대 바이트수, 기본값은 파일을 끝까지 읽습니다. 이 파라메터는 필터가 처리한후에 스트림에 적용되기에 주의하세요.
반환치
- 읽기가 끝난 데이터를 반환합니다. 실패한 경우 FALSE를 반환합ㅎ니다.
- 경고 : 이 함수는 논리치 FALSE를 반환할 가능성이 있습니다만, FALSE로서 평가될 값을 반환할 가능성도 있습니다. 상세한 정보는 논리치의 파트를 참조하세요. 이 함수의 반환치를 제대로 사용하라면 === 연산자를 사용하세요
에러/예외
- filename을 찾을 수 없을 경우, maxlength가 0보다 작은경우, 또는 스트림내에 지정한 offset의 디스크상 위치가 실패한경우 E_WARNNING레벨의 에러가 발생합니다.
주의 : 이 함수는 바이너리 데이터에 대응하고 있습니다.
힌트 : fopen wrappers가 유효한 경우, 이 함수의 파일명으로 URL을 사용하는 것이 가능합니다. 파일명의 지정방법에 대한 상세한 내용은 fopen()을 참고해주세요. 서포트할 프로토콜/wrapper에는 여러가지 wrapper의 기능이나 그 사용법, 제공될 정의된 변수등의 정보가 정리되어 있습니다.
경고 : IIS와 같은 몇가지의 표준에 대응하지 않는 WEB서버는 PHP의 경고를 발생가능한 순서로 데이터를 송신합니다. 이런 서버를 사용할 경우 error_reporting를 경고를 발생시키지 않는 레벨까지 작게 설정할 필요가 있습니다. PHP에서는 https:// wrapper로 스트림을 오픈할 경우에는 버그가 있는 IIS서버 소프트웨어를 검출할 수 있어, 이 경고를 억제할 수 있습니다. 당신이 ssl:// 소켓을 작성하기위해 fsocketopen()을 사용하고 있는 경우 스스로 이 경고를 검출하여 억제할 필요가 있습니다.
반응형'Technique > PHP' 카테고리의 다른 글
money_format (0) 2016.04.15 move_uploaded_file (0) 2016.04.11 spl_autoload_register (0) 2015.12.15 에러 출력하기 (0) 2015.12.08 객체지향 설계 5원칙 (0) 2015.12.08