//////////// 첫번째 방법
$t1 = explode(" ",microtime());
$str = "";
for ($i=0;$i<20000;$i++) {
$str = $str.$i."번째 문자열<br>";
}
$t2 = explode(" ",microtime());
echo ($t2[1]-$t1[1])+($t2[0]-$t1[0]);
//////////// 두번째 방법
$t1 = explode(" ",microtime());
$str = "";
for ($i=0;$i<20000;$i++) {
$str = $str.($i."번째 문자열<br>");
}
$t2 = explode(" ",microtime());
echo ($t2[1]-$t1[1])+($t2[0]-$t1[0]);
//////////// 세번째 방법
$t1 = explode(" ",microtime());
$str = "";
for ($i=0;$i<20000;$i++) {
$str .= $i."번째 문자열<br>";
}
$t2 = explode(" ",microtime());
echo ($t2[1]-$t1[1])+($t2[0]-$t1[0]);
결과 :
첫번째 방법 -> 5초 ~ 10초 이상 속도가 걸림
두번째 방법 -> 0.5초 이하로 빠름
세번째 방법 -> 0.5초 이하로 빠름
문자열 더할 때 절대 첫번째 방법 사용하지 맙시다!
근데 확실히 PHP가 빠르긴 빠르네요.
ASP로 for 구문 20000번 돌렸을 때
첫번째 방법은 대략 13~15초
두번째 방법은 대략 6~7초 나오는데 -_-
첫번째 방법과 두번째 방법은 단순히 괄호를 하냐 안하냐의 차이인데
이렇게 속도 차이가 나는 이유는
http://www.microsoft.com/korea/msdn/library/etc/issues/2003/aspstrcatn/
여기가서 확인하세요.
댓글 2개
게시판 목록
팁게시판
질문은 상단의 QA에서 해주시기 바랍니다.
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 5452 | 11년 전 | 2089 | ||
| 5451 |
잘살아보자
|
11년 전 | 847 | |
| 5450 |
잘살아보자
|
11년 전 | 1020 | |
| 5449 |
잘살아보자
|
11년 전 | 899 | |
| 5448 |
잘살아보자
|
11년 전 | 1380 | |
| 5447 |
잘살아보자
|
11년 전 | 2181 | |
| 5446 |
잘살아보자
|
11년 전 | 867 | |
| 5445 | 11년 전 | 1386 | ||
| 5444 | 11년 전 | 1094 | ||
| 5443 | 11년 전 | 1141 | ||
| 5442 |
네이비칼라
|
11년 전 | 1476 | |
| 5441 |
네이비칼라
|
11년 전 | 1238 | |
| 5440 | 11년 전 | 2563 | ||
| 5439 | 11년 전 | 1889 | ||
| 5438 | 11년 전 | 1343 | ||
| 5437 | 11년 전 | 1321 | ||
| 5436 | 11년 전 | 999 | ||
| 5435 | 11년 전 | 5384 | ||
| 5434 | 11년 전 | 2174 | ||
| 5433 | 11년 전 | 1412 | ||
| 5432 |
|
11년 전 | 3252 | |
| 5431 | 11년 전 | 2303 | ||
| 5430 | 11년 전 | 1001 | ||
| 5429 | 11년 전 | 2793 | ||
| 5428 | 11년 전 | 2992 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기