일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 코드이그나이터
- 라라벨
- 옵티머스g
- 맥
- 옵지
- Laravel
- ubuntu
- 제주도
- FMS
- MySQL
- 우분투
- TiL
- codeigniter
- 20.04
- 셀레니움
- Raspberry Pi
- upbit
- php
- 맛집
- 라즈비안
- 옵티머스 g
- Ubuntu 20.04
- 업비트
- Selenium
- 옵G
- C
- 라즈베리파이
- 프레임워크
- 회고
- 우분투 20.04
- Today
- Total
목록평범한 개발 이야기/PHP (51)
평범한 이야기들
기존 time() 함수를 사용했을 경우 $timestamp = time(); echo 'timestamp : ' . $timestamp; 위와 같이 출력 했을 경우에는 10자리의 timestamp가 생성이 됩니다. 즉 밀리세컨즈의 내용이 포함되지 않았습니다. 13자리 Timestamp 생성하기 list($microtime, $timestamp) = explode(' ',microtime()); $time = $timestamp . substr($microtime, 2, 3); microtime() 함수를 이용해 밀리세컨드 내용까지 가져옵니다. 비교하기
curl ( 저는 컬이라고 부르긴 합니다. 가끔 씨 유알엘 이라고도 하고요.)는 Client Url의 약자로 클라이언트 측에서 다양한 프로토콜을 이용해 데이터를 전송하고 받을 수 있는 라이브러리라고 생각하시면 될 것 같습니다. 요즘은 API 호출이나 페이지 파싱할때 많이 사용하는데 curl를 이용해서 json 데이터 주고받기를 샘플로 만들어봤습니다. 1. cUrl 공통 클래스 제작 CommonCall 이라는 공통 클래스를 이용해서 어디서든지 호출할 수 있도록 작업을 했습니다. selectMode라는 메서드를 이용해서 파라미터 별로 주소를 다르게 해서 호출하게 했습니다. 호출 url도 다양하게 나누어서 사용해도 될 것으로 보입니다. call 메서드의 $postData는 array 형입니다.
mysql_real_escape_string SQL 문에서 특수 문자를 변경해주는 함수 라고 생각하면 된다. 즉 SQL Injection 공격을 방어할 수 있는 좋은 함수이다. 해당 함수는 PHP7 이상에서는 Deprecated 되었다. (기존 mysql 함수들 전부 Deprecated ) 따라서 PHP7 이상 또는 mysqli , PDO를 사용한다면 아래 함수를 사용하면 된다. mysqli_real_escape_string(인자); PDO::quote(인자); 공식설명 mysql_real_escape_string, mysqli_real_escape_string 차이 위에서도 설명했지만 mysql_real_escape_string은 결국 PHP 구 버전의 함수이며 둘의 차이는 인자의 차이가 있다. mys..
이전 상황 현 회사에 이직 후 가장 먼저 한 일은 작업시간이 오래 걸리는 프로그램의 실행시간을 단축시키는 것이었습니다. 해당 프로그램은 자정 12시에 시작돼 16~20시간 오래 걸렸을 때에는 22시간까지도 걸리는 작업이었습니다. 작업의 내용은 간단했습니다. 매일 DB에 존재하는 2500~3000만 건의 데이터를 가져와 텍스트로 저장하는 것이었습니다. 따라서 시간을 줄이기 위해 다음과 같은 작업을 진행했습니다. 문제 파악 해당 프로그램을 확인 결과 아래와 같은 문제점들이 있었습니다. 1. 불필요한 로직 및 사용하지 않는 변수 존재 - 많은 계산을 한 후 결과를 사용하지 않는 로직 - 사용하지 않은 if-else 문 - 클래스 객체를 선언하고 사용하지 않는 변수 2. 정보를 가져오기 위한 여러 개의 DB 쿼..