[PHP] PHP Unit Test - composer 로 설치 방법 1. composer 명령어로 PHP Unit Test 설치 composer require --dev phpunit/phpunit 5.7 여기서 나는 2018년 1월 기준 phpunit 6.0 버젼이 제일 최신이지만, 5.7 설치 이유는, 6.0 부터는 PHP7만 지원하며 namespace 가 적용되어 기존에 작성한 단위 테스트를 수정해야 하므로 해당 Unit Test 를 써야하는 프로젝트는 6을 사용하고 기존 프로젝트일 경우 5.7 버전을 사용하는 게 좋다고 해서 5.7로 설치 했다. 2. 설치 확인 ./vendor/bin/phpunit --version 3. comoser.json 수정 "autoload": { "psr-4": { "": "application/libraries/" }, "files".. Helloworld!/PHP 2018. 4. 30. 14:02
[PHP] mktime 날짜와 시간에 대한 Unix Timestamp 를 가져오는 함수로 써 다음과 같이 사용하면 된다. mktime(시, 분, 초, 월, 일, 년도); ex) mktime('13', '30', '0', '12', '15', '2016'); //2016년 12월 15일 오후 1시 30분 0초에 대한 Unix timestamp 를 가져옴 Helloworld!/PHP 2016. 12. 15. 10:00
[PHP] CodeIgniter HOOK 새벽에 잠시 서버점검을 위해 어떤 홈페이지를 들어가더라도 서버점검중이라는 페이지를 띄우는 작업이 필요했다. 그래서 CI에서 Hook을 이용해서 컨트롤러가 돌기전, 아예 시스템 작동 초기 상태일때 바로 시스템 점검 중이라는 페이지를 띄우도록 했다. 방법은 다음과 같다. 1. Hook 활성화 후킹은 클로벌로 동작하기 때문에 아래의 변수를 활성화 시켜야한다. config/config.php 로 가면 $config['enable_hooks'] = FALSE; 이 있는데, 이 부분을 TRUE 로 바꿔줘야한다. $config['enable_hooks'] = TRUE; 2. Hook 정의 config/hooks.php로 가서 후크를 다음과 같은 형태로 정의한다. $hook['pre_system'][] = [ 'cla.. Helloworld!/PHP 2016. 12. 15. 09:54
[PHP] PHPStorm 의 북마크(Bookmark) 북마크는 원하는 코드 라인을 저장해두고 빠르게 사용할 수 있도록 하는 기능이다. 사용방법은 다음과 같다. 1. 원하는 라인에서 F11 를 누른다. 그럼 라인넘버가 보이는 곳 옆에 체크표시가된다. 2. 또는 숫자나 문자번호로 북마크를 구분해 저장할 수 있다. 방법은 Ctrl + F11 누른 후 원하는 문자나 숫자를 입력하면 된다. 그럼 다음 이미지처럼 라인넘버가 보이는 곳 옆에 체크표시 대신 선택한 문자나 숫자가 보일 것 이다. 3. 이렇게 저장한 북마크를 보고싶다면 북마크 Shift + F11 키를 누른다. 그럼 다음과 같이 체크만 했을 경우는 비여서 보이고, 숫자나 문자로 북마크 저장했을 경우는 그 문자들이 보인다. 그와 함께 파일명, 북마크한 라인넘버, 소스코드가 미리 보여진다. 선택하면 북마크로 이.. Helloworld!/PHP 2016. 8. 10. 14:55
[PHP] PHPStorm 에서 API 문서보기 남이짜놓은 소스코드를 보다가 (아니면 예전에 내가 한 소스코드를 보다가) 처음 보는 함수가 나오면 php.net 을 통해 함수 레퍼런스를 확인한다. 근데 웹브라우저로 이동해 php.net 을 들어가 매번 함수명을 검색하는 것이 여간 귀찮은 일이 아니다. 그럴때 원하는 함수에 포커스를 두고 Shift + F1 을 누르면 바로 php.net 으로 이동해 포커스해둔 함수를 검색해서 볼 수 있다. 다음과 같이 file_get_contents라는 함수의 API 문서를 보고싶다면 함수명 위에 포커스를 두고 Shift + F1 를 누른다 그럼 이렇게 바로 file_get_contents 관련 API 문서를 확인할 수 있다. API 가 뜨는 웹브라우저를 설정하고 싶다면 환경설정에서 변경해줄 수 있다. File - Se.. Helloworld!/PHP 2016. 8. 10. 11:10
[PHP] 배열에서 제일 큰 값을 가진 value 에 key 값 가져오기 - max, array_keys 우선, first 부터 nth 까지 문자열로 된 key 값에 각각 숫자로 된 value를 가진 배열이 있다. 이때 배열에서 제일 큰 값을 가지고 있는 value 의 key 값을 가지고 오고싶을 땐 다음과 같이 사용하면 된다. $array = array( 0 => 'first', 2 => 'second', /* ... */ 99 => 'nth' ); $max_key = max( array_keys( $array ) ); // 결과 : 99 1. 배열에서 제일 큰 값을 가져오는 건 max 함수를 쓴다. mixed max ( array $values ) 2. 그리고 그 value 에 key 값을 가져올 때는 array_keys 함수를 쓴다 array array_keys ( array $input [, mixe.. Helloworld!/PHP 2016. 7. 21. 16:52
[PHP] PHPUnit #3. Suite 테스트 케이스를 여러개를 만들다보면 테스트 별로 파일(클래스)을 나누어서 관리를 해야할 경우가 생기는데 그렇게 여러 파일들을 만들어 놓은다음 다같이 실행하고 싶을 경우 phpunit 파일명 하나하나 실행하는 것 말고도(물론 디렉터리 통째로 실행을 해도되지만) PHPUnit_Framework_TestSuite 클래스를 통해서 테스트 묶음을 만들 수 있다. require_once "testTest.php"; require_once "dummyTest.php"; class AllTests { public static function suite() { $suite = new PHPUnit_Framework_TestSuite("PHPUnit Framework"); // 테스트할 테스트 클래스를 추가한다. $sui.. Helloworld!/PHP 2016. 6. 7. 15:42
[PHP] 한글이 깨져서 나올 때 - iconv Snoopy 로 HTML 소스를 가져왔는데 소스에 있는 한글들이 깨지는 현상이 발생했다. 이럴때 iconv로 한글 깨짐을 해결할 수 있다. iconv 함수 사용방법은 다음과 같다. iconv("현재 인코딩", "바꿀 인코딩", 바꿀 문자열) 예를들어 utf8 형식으로 되있는 소스파일을 euckr 로 바꾼다면 한글 깨짐 현상이 해결된다 $ex = iconv("utf8", "euckr", $ex); 참고사이트 : http://nsstbg.tistory.com/171 Helloworld!/PHP 2016. 6. 7. 14:41
[PHP] PHPUnit #2. Fixture PHPUnit 에서 설정 코드(Fixture)란, 테스트를 수행할 때 테스트 수행 전 미리 실행되어 있어야할 또는 테스트 수행 후 실행되야할 기본 설정 코드를 의미한다. 대표로 setUp() 과 tearDown()가 있으며 두 메서드는 각 테스트가 수행되기 전과 후에 호출된다. 기본 테스트 케이스 클래스에서는 그냥 빈 메서드이고, 필요한 경우 테스트 케이스용 클래스에 덮어쓰면 된다. 1) setUp() 테스트 메소드(test로 시작하는 메소드들)을 수행하기 전에 항상 setUp() 메소드가 수행된다. 여기에 설정 코드를 넣으면 된다. protected function setUp() { //... } 1) tearDown() 한개의 테스트 메소드가 끝날 때마다 항상 tearDown() 메소드가 호출된다. .. Helloworld!/PHP 2016. 6. 7. 14:33