PHP) cURL Async (PHP5+) PHP5이상에서는 curl_multi_init 함수를 이용 가능하다. curl_multi_init 함수를 이용하여 비동기 처리를 해보려 한다. 아래와 같이 코드를 작성하면 url변수에 담긴 주소들에 비동기 방식으로 접근 가능하다.
php) echo 보다 빠른 글 출력 echo 보다 빠른 글 출력?? echo 보다 빠른게 이미 저장된 파일이다. 서버의 연산과정이 제일 작다. 예시 코드 위 코드는 로그인이 안되었을때 로그인 폼을 보여주는 코드이다. if 문을 저렇게 사용도 가능하고 echo로 아래처럼 처리하는것보다 훨씬 속도가 빨라진다. echo ' '; 이것도 php 쓰면서 습관을 들여야될 부분이다. 좋은 습관을 미리미리 들여놓자고요~~
php) include vs include_once 먼저 이 둘의 속도부터 비교하면 대략 10배 이상 차이난다. include 가 include_once 보다 빠르다. include_once 는 동작과정중 이미 불러왔나를 체크하는 과정때문에 느려지는걸로 안다. 속도상 include도 많이 안쓰는게 좋다. 정말 필요한 경우에만 사용하도록 하는게 좋다. 예) 라이브러리를 로딩 , 자주 바뀌는 함수 등이 많은 경우에 +) include 와 require 의 차이 require 은 include 에 로딩실패시 die(); 가 추가되어 있다고 보면된다. require은 로딩실패시 이후 코드가 실행 되지 않는다.
php) rand() vs mt_rand() rand() 는 오래된 함수, mt_rand() 는 신식 함수이다. 당연히 속도가 mt_rand() 가 빠르고 랜덤값의 범위 또한 더욱 넓다. 만약 PHP 7.1 이상이면 이 둘의 차이는 없다. rand() 를 하여도 mt_rand()가 실행되게 바뀌었다. https://php.net/manual/en/migration71.incompatible.php 테스트는 rand의 최대 범위인 0~32767 까지로 테스트를 하였다. 속도 테스트 코드 function get_time() { list($usec, $sec) = explode(' ', microtime()); return ((float)$usec + (float)$sec); } for($i=0;$i
php) isset() vs empty() 먼저 속도 차이가 난다. 저는 속도 때문에 isset을 쓰는걸 권장 합니다. 다만 주의할 사항이 있습니다. 변수 값이 1일때 $a=1; if(isset($a)){//값이 있다면? echo 'isset()'; } if( ! empty($a)){//비어있지 않으면 echo 'empty()'; } 결과 isset()empty() 변수값이 0이면? $a=0; if(isset($a)){//값이 있다면? echo 'isset()'; } if( ! empty($a)){//비어있지 않으면 echo 'empty()'; } 결과 isset() 이유는 empty 는 false, 0 ,null 같은 값들을 false로 리턴한다. 속도는 어느서버에서나 isset이 빠릅니다. 널값 0 false 등을 주의해서 처리해주세요 이 글..