//////////// 첫번째 방법
$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개
게시글 목록
| 번호 | 제목 |
|---|---|
| 17730 | |
| 11739 | |
| 11738 |
MySQL
mysqlDB export 복원
|
| 20311 | |
| 11737 | |
| 11736 | |
| 11735 | |
| 11734 | |
| 11732 | |
| 11731 | |
| 11730 | |
| 11729 | |
| 11728 | |
| 20308 |
HTML
html5 멋진 사이트 1곳
2
|
| 20307 |
CSS
overflow 속성
|
| 11727 | |
| 11724 | |
| 11723 | |
| 20306 | |
| 20304 | |
| 11722 | |
| 11721 | |
| 11720 |
웹서버
wget에 대한 팁
|
| 11719 | |
| 11718 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기