>> Read No. 2748 article  
[PHP] 조금 빠른 dio_open(), mb_strcut() 함수

등록 2002-08-11 01:00:00     조회 4
이름 산이    

		이곳 게시판에 관련 내용이 없어서
적습니다.
 [PHP] 조금 빠른 dio_open(), mb_strcut() 함수
  1. Direct IO functions
 http://www.php.net/manual/en/function.dio-open.php  dio_open() 관련 함수를 사용하려면 PHP를 컴파일할 때
,    --enable-dio
  or
  --enable-dio=shared
 옵션을 주고 컴파일해야 합니다.
 이 함수는 PHP/4.2.0 부터 추가되었군요..
 실제로 fopen(), fread(), fgets() 함수와 수행속도를
비교해 봤는데 약간(거의 무시할 정도로) 빠르더군요...
 -- 사용예(4.2.0 이상시) -------------
function get_file($file)
{
  if($fp = dio_open($file,O_RDONLY)) {
    $content = dio_read($fp,filesize($file));
    dio_close($fp);
  }
  return $content;
}
 function put_file($file, $content)
{
  if($fp = dio_open($file,O_WRONLY)) {
    $bytes = dio_write($fp,$content);
    dio_close($fp);
  }
  return $bytes;
}
------------------------------------
 resource dio_open ( string filename, int flags [, int mode])
 flags :
O_RDONLY - 읽기 모드
O_WRONLY - 쓰기 모드
O_RDWR - 읽기와 쓰기 모드
O_CREAT - 파일이 존재하지 않으면 파일 생성
O_EXCL - O_CREAT와 O_EXCL이 설정되면 dio_open()은 fails
O_TRUNC - 파일이 존재하면 쓰기 모드, 파일 크기는 zero(0)
O_APPEND - 파일에 내용 추가하기
O_NONBLOCK - non blocking 모드 설정
  2. Multi-Byte String Functions
 http://www.php.net/manual/en/ref.mbstring.php  mb_strcut(), mb_substr() 함수를 사용하려면,
   --enable-mbstring (또는 --enable-mbstring=shared)
  --enable-mbstr-enc-trans (옵션)
  --enable-mbregex (옵션)
 옵션을 주고 컴파일해야 합니다.
 mb_substr()와 mb_strcut()함수는 동일합니다.
이 두개의 함수는 2 bytes 문자를 자를때 아주 유용하더군요..
이 함수를 사용하기 위해서는 PHP/4.0.6 이상이어야 합니다.
그외 mb_xxx() 다른 함수를 사용하려면 4.2.0 이상이어야 합니다.
 실제로 한글과 영문, 특수문자, 숫자가 조합된
문자를 순서대로 잘라봤는데 아주 아주 괜찮더군요...
속도도 비교적 빠르고.....
  예:
string mb_substr ( string str, int start [, int length [, string
encoding]])
 -------------------------
$str = '한글dd나라.gksrmskfk.한.38@$%d';
for($i=1; $i<=mb_strlen($str); $i++) {
  echo mb_substr($str,0,$i);
  echo '<BR>'."";
}
-------------------------
 조금이나 도움이 되었으면 합니다.
이름
암호
  목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 0.39 초 ] 작업시간: [ 0.03 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1791021837
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.