php 21

[삽잡이 :: Laravel] Laravel Dusk 환경 셋업

Laravel Dusk는 Laravel 5.4 부터 사용이 가능한 웹 브라우저 테스트 라이브러리입니다.ChreomDriver와 Facebook PHP Web driver를 사용하고 있어Web UI 테스팅을 하기 위한 엄청난 녀석(?)이라 할 수 있습니다. Laravel ~ 칭찬해~ 자 그러면, 간단하게 Laravel Dusk 환경을 셋팅하도록 해보겠습니다. 우선, 각 자신이 사용하고 있는 OS에 맞게 Laravel 설치가 기본적으로 되어있어야 합니다.이를 위해, 먼저 Composer를 설치합시다. 저는 Window를 Base로 셋팅에 들어가겠습니다. https://getcomposer.org/Composer-Setup.exe(composer windows download link) 설치가 완료되었다면, ..

[삽잡이::db] PHP에 Mongo DB 연동하라~!

PHP와 Mongo DB를 연동해야할 상황에 쳐했었습니다. 여기서 Mongo DB는 NoSQL에 속하는 DB중 하나를 뜻합니다~ Mongo DB...간략하게 설명하자면 관계형 DB와 다른 형식의 DB이다.JSON Type의 데이터 저장구조를 가지고 있는데,기회가 되면 따로 정리할 시간을 가졌으면 하군요~ 아무튼... PHP에서 Mongo DB를 사용하기 위해서인터넷을 뒤지고 있었는데요~좋은 자료가 있더군요!(참고_ How to Configure Mongo DB With PHP for XAMPP On Windows) 저는 윈도우상에서 xampp 를 사용하고 있었기에,윈도우 환경에서 Mongo DB 연동이 필요했습니다. 간단하게, 현재 PC(Server)에 설치되어있는 PHP Version을 확인하시고~ 요..

[삽잡이::php] 문자를 치환하라! str_replace()

URL에 같이 딸려오는 파라메터들...이와 같은 파라메터들을 추출하여 사용할 수 있습니다. 그런데, 이 URL에는 한글과 특수문자들이 포함될 수 없기에 우리는 URL을 인코딩해서 보내줘야합니다. 이와 같이 날라온 memo의 값을$sMemo라는 변수에 담았다고 가정합시다. 1234cs 과연 출력은 어찌되었을까요? 잉?? 뭐야아~~ > 가 &rt; 로 바뀌었습니다... 예.. 그래요 아까 말씀드린 것과 같이 URL의 특수문자가 인코딩이 된 것입니다. 그런데, >를 꼭 사용해야한다면!? 이때 str_replace()함수를 사용하면 됩니다. 이 친구는 바로!문자를 치환해줄 수 있는 php 함수입니다. [출처_ PHP] 이와같이 치환할 문자열을 첫번째 인자로,대체할 문자를 두번째 인자로,마지막으로 문자열을 뒤질(..

[삽잡이::IDE] PhpStorm이라는 IDE가 나의 손에...

PHP 개발을 하며 PhpStorm이라는 IDE를 사용할 기회가 생겼습니다. 1년에 한화로 20여만원이 조금 넘는 금액을 줘야 사용할 수 있다는 그 IDE를... (출처_ PhpStorm)공식 홈페이지에도 이쁘게 소개하고 있습니다. 이전에 Android Studio를 사용하며 intellij에 대해 약간 맛보기로 경험한 적이 있는데요 뭐... 아직도 Eclipse를 제대로 다룬다고도 할 수 없는 이 삽잡이가...이왕 사용하는거 좀 공부도 하면서 사용해봐야겠습니다. 오히려 이도저도 아닌 지금때에이러한 IDE를 접하는것이 행운일지도!? '장비 탓하지말라' 는 말이 있습니다.그래요... 멋진 개발자가 되기 위해서는장비에 상관없이 멋있게 개발을 해야겠지요. 그런데, 이왕 나에게 찾아온 최신 무기....이 무기를..

[삽잡이::php] 시야를 넓혀라! unset( )응용!

(출처_ Daum) 정정당당히 정면으로 돌파하는 정공법. 항상 정공법만이 답이라고만 할 수 없듯이,여러 상황속에서는 비틀어보는 시각도 필요한 것 같습니다. 오늘 하루를 보내며 넓은 시야로 문제를 바라보는 것도 좋겠다고 느낀 하나의 사례를 간단하게 메모하고자합니다. 삽잡이는 이와 같은 JSON 형식의 Array를 받아와이리저리 가공해서 쓸 일이 있었습니다. 반복문을 통해 Key와 Value를 각각 나누고또 그 나눈 값에서 반복문을 사용하여 데이터를 잘개 쪼개는 코드를 구현하였죠...(아직 초보라... 생각이 많이... ㅠㅠ) 1234567891011Colored by Color Scriptercs 대충 이런식... 중복으로 반복문을 사용하는 것에 대해 마음에 들지 않았었는데 어쩔 수 없었다 생각했습니다.그..

[삽잡이::php] 지워버리겠어! unset( ) (isset( )은 꼽사리)

"Unset a given variable"주어진 변수의 설정을 해제하겠다. PHP에서는 주어진 변수를 파괴하는 어마어마한 함수가 있습니다. [출처_ PHP] 예 그렇습니다.바로, unset() 이라는 함수입니다.인자로 들어가있는 변수의 메모리를 해제해주는 것입니다. 이와 같은 Array이가 있다고 가정해봅시다. 여기서 두번째 데이터를 unset()의 인자로 포함시키면 어떻게 될까요? 12345Colored by Color Scriptercs 자... 메모리를 파괴해봅시다. 정말 이렇게 사라지게 됩니다. 이와 반대 개념으로 inset()이라는 함수도 존재합니다.is set?뭔가 느낌이 오지 않으십니까?하하... 그렇습니다. 있는지 확인하는 함수입니다. 12345Colored by Color Scripte..

[삽잡이::php] 느슨한 PHP 변수 타입검사! 함수까지 담는다

PHP 코드를 조금씩 개선하고자 분석하고 있었습니다.이 와중에 중복되는 코드이지만다른 class 파일에 있는 메서드들 때문에 어떻게 줄일까 고민하고 있었습니다. 그런데 신기하게도 함수까지 변수에 담을 수 있어서유용하게 코드를 수정한 경험이 있습니다.우와~ 뭐라꼬~?! 이에 감동하여 느슨한 언어 PHP 변수의 데이터형 결정은 어떻게 되는지간단하게 정리하고자 합니다. 좋아 좋아~ PHP 언어에서 변수는 '$'를 붙여 사용합니다. 달러~ 달러~ 달러는 미국의 돈~~ 아무튼... PHP는 느슨한 언어입니다.이유는 변수에 값이 할당 될 때 즉, 담고있는 타입에 따라 자동으로 변환되기 때문입니다. PHP는 변수의 선언이 없는 것입니다. 12345678//cchar ch;int i;double d; ch = 'a';..

[삽잡이::php] cURL(Client URL)에 대해서 감을 익혀보자!

코드 분석중에 보인 cURL...처음엔 뭔가했습니다...그래서 얕게나마 알아가보며 정리를 해보았습니다... 부족한 내용인 것은 함정... 하.하.하. cURL은 Client URL의 줄임말입니다. 예 그렇습니다.물론 URL도 줄임말이지요. 몰라서 안쓴게 아닙니다.... Client Uniform Resource Locator 예 그래요... 인터넷에서 찾아봤어요.아무튼... cURL은 PHP에 있는 라이브러리입니다. (출처_ PHP) php 매뉴얼을 보게 되면많은 다른 타입의 서버들과 프로토콜로부터 연결 및 통신할 수 있도록 해준다고합니다. 예 그렇습니다.여기에 있는 프로토콜에는 http, https, ftp 등등이 있군요. 삽잡이는 Jenkins라고 하는 CI툴 때문에이 cURL을 접하게 되었습니다. ..

[삽잡이::javascript] Javascript에서 PHP 변수 사용하기

애초에 PHP는 Server를 위한 언어이고 Javascript는 Client (Browser)를 위한 언어입니다. 둘의 성격은 다릅니다.서버와 클라이언트... 특히나 Client에서 Server로즉, Javascript에서 PHP로 데이터를 보낸다고 하더라고Server에서 바로 받는다는 보장이 없기에우리는 Ajax와 같은 녀석들을 통해 Server에 값을 전하고 응답을 기다려서 처리하곤합니다. 그런데, Server에서 Client로 보내는 것은 그럼 어찌할까요? 그래서 PHP 데이이터를 Javascript에서 어떻게 사용할 수 있을지 생각해봤습니다. 으아~~ 두뇌 풀가동~ 우선은 직접적으로 echo문을 활용하여');?>Colored by Color Scriptercs 대략 이러한 코드를 통해 설명했던 ..

[삽잡이::php] 꼼꼼하게 체크하자! in_array(), ===(identical)

예를 들어 이와 같이 Qeury문을 날려 결과를 받아오는 코드가 있다고 생각해보겠습니다. 자... 예외 처리를 해봅시다.어떻게 하시겠습니까!?뭐가 그리 어렵다고~ 그냥 empty() 함수 써서 확인하면 되지~ 이얄~~~~~ 좋습니다! 굳!굳!굳! 하지만, 조금 더 신중해야할 필요가 있습니다.생각해보겠습니다. 위에서 언급한 것과 같이 NULL일 경우? 이외에도 여러가지로 신경써주면 좋을 듯합니다. 예를 들어 return 값이 제대로 된 결과 값이 아닌 false 인지~ 아니면, return 값이 올바른 타입인지 말입니다. 죄송합니다. 다 꺼지라니~~~ 하지만, 신경을 잘 써줘야겠지요?혹시 모를 오류에 대비를 해야지요! 그래서 우리 이렇게 신경쓰면서 코딩합시다. return 값이 null인지 확인하기! 결과..