홈에디터 플러스 주석 삽입


안녕하세요. 고코더입니다.


에디터플러스는 가볍고 빠른 에디터지만 요즘 나오는 IDE 만큼의 기능은 없습니다.
사실 하드코딩으로 개발하기 좋은 툴이라 있는 그대로 쓰는 경우가 많습니다.

아무리 그래도 주석 처리는 한번에 많은 소스에 삽입해야 하기 때문에
단축키가 필수 입니다.

그래서 오늘은 에디터플러스로 주석 기호를 입력하는 방법을 알아보겠니다.

▼도구(T)에서 기본설정(P)으로 이동합니다.



▼도구-> 키보드 -> 편집 -> 주석 줄을 클릭 합니다.
보통은 기본으로 단축키가 맵핑 되어 있지만 안되어 있다면
Ctrl + / 으로 맞춰주세요 


▼역시나 주석 줄 제거도 보통은 기본으로 단축키가 맵핑 되어 있지만 안되어 있다면
Ctrl + \ 으로 맞춰주세요 


그럼 준비 완료 입니다.
소스를 준비하고 주석을 처리 해보겠습니다. 

▼소스를 드래그 하여 지정 후에 아래처럼
CTRL + /을 눌러 보겠습니다.

+


▼ 그럼 주석 줄 입력창이 뜹니다. ASP 라면 '(작은 따옴표) 이겠죠


▼ 멋지게 모든 줄에 주석이 입력 되었습니다.


▼ 이번엔 주석 제거를 해보겠씁니다. 소스를 드래그 하여 지정 후에 아래처럼
CTRL + \ 을 눌러 보겠습니다.

+


▼ 아까 입력했던 작은 따옴표를 입력해야 제거가 될 것입니다.


▼소스가 다시 돌아왔습니다. 



이제 편하게 주석을 처리하게 됐네요.



마무리

주석은 꼭 단축키로


댓글을 달아 주세요



문자열 replace 변경 하기 


안녕하세요 고코더 입니다.


오늘은 PHP의 기본 함수은 str_replace를 알려드리려고 합니다.
모든 언어에는 replace 함수가 있습니다. 당연히 PHP에도 있습니다.

단지 함수 이름 앞에 "str_" 을 붙혀넣었습니다. 문자열(str) 변경한다는 용도를 강조한 듯합니다.
PHP에는 "replace" 라는 6글자의 함수는 없고 용도를 표시한 [*]_replace가 있습니다.
개발자를 위한 배려지만 조금은 헷갈리는 구조입니다.



그래도 완벽함 치환 함수를 제공해주고 있으니 한번 알아보겠습니다.

▼해당 함수의 사용법입니다.
str_replace(
     1번째 인수 : 변경대상 문자
     2번째 인수 : 변경하려는 문자
     3번째 인수 : 변수, replace가 바꾸고자 하는 문자열(변수수)
)

이런식으로 되어 있습니다.
ASP의 replace 랑은 1,3번째 인수가 바뀌어 있네요.
언어 마다 사용법과 명명은 같은데 사용법이 조금씩 다르네요

▼ 그리고 쉽게 예제를 한번 만들어 보았습니다.
1
2
3
4
5
6
7
8
<?php
 
    $txt = "고코더 개발 Express 개발강의";   //대상 문자열
    $result = str_replace('개발' , 'IT'$txt);
    // str_replace('바껴서 없어질 문자' , '변경 완료 될 문자', '대상 문자열');
    echo "변경 전 문자열 : ".$txt."<br>";
    echo "변경 후 문자열 : ".$result;
?>
cs

최대한 한눈에 들어오게 코딩을 해보았는데요
개발 이란 글자를 -> IT라고 바꾸는 방법을 알아보았습니다.
(처음 블로그 이름이었다고 요즘은 범위가 넓어져 개발이름 이름 대신 IT를 쓰고 있습니다.)

▼웹에서 확인한 결과입니다.
IT Express !!!




마무리

 replace 만 이라도 사용법을 모든 개발언어가 통일 했으면 하네요.


댓글을 달아 주세요



php변수를 지정 했는지 체크

PHP의 특징은 변수를 선언하지 않고도 바로 쓸  수 있습니다.
그래서 개발을 하다보면 어떤 참조 파일에
새롭게 정의한 페이지 변수와 중복되는건 아닌지 혼란스럽습니다.

그래서 PHP는 isset()이라는 함수를 만들어 놓았습니다.

해당 변수가 설정이 되어 있는지 아닌지를 체크 할 수 있는 기능입니다.

생각보다 간단한 방법으로 변수의 혼란을 피할 수 있는데 실무에서
잘 안사용 하는거 같아 정의 해보았습니다.




▼PHP 공식 메뉴얼은 아래와 같습니다.

▼제가 express 하게 예제를 만들어 보았습니다. 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
 
    $var1 = "";  //변수를 설정
    //$var2 = "" //변수를 설정하지 않음
 
    $arr_var = array ("1",2NULL);
 
    echo "변수를 설정 한 경우 :".isset($var1)."<br>";
    echo "변수를 설정 하지 않은 경우 :".isset($var2)."<br>";
 
    //if에서 사용할 시에 
    if (isset($var1)){
        echo "변수를 설정했다면 in <br>";
    };
 
    echo "배열에 변수를 설정 한 경우 :".isset($arr_var[0])."<br>";
    echo "배열에 변수를 Null 한 경우 :".isset($arr_var[2])."<br>";
 
?>

▼웹 에서 노출된 모습입니다.


주의 할 점은  이렇습니다.
1. 변수가 사용된 즉 값이 담겨 있을시에는 "1"을 노출합니다.
2. 값을 null로 지정한 변수는 설정하지 않는 경우와 같이 취급합니다.
3. 배열에서도 사용 가능하며 배열로 프로그램을 만들시에 상당히 도움이 됩니다. 





마무리


함수 하나 하나 깊이 공부하면 가장 좋겠지만
특징만 외워두고 필요할때 꺼내 쓰세요


댓글을 달아 주세요



PHP에서 요일 구하기

요일 구하기는 한번씩은 만들어 봤을 기능입니다.
대부분의 언어는 함수로 이 기능을 제공합니다.

▼참고 레퍼런스는 아래 URL입니다.

하지만 간단하게 예제로 참조 해보겠습니다.

date("w") - 0부터 시작해서 6까지 일~토 까지 나타냅니다.
date("N") - 1부터 시작해서 7까지 월~일 까지 나타냅니다.



PHP 5.1에서는 date("N")으로 ISO-8601 표준으로 제공해주네요.
DB 설계에 따라 둘중 하나를 골라 쓰시면 될 것으로 보입니다.

▼ 아래는 코딩한 레퍼런스입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    /*
        date("w")은 0(일요일)에서 6(토요일)
        date("N")은 1(월요일)에서 7(일요일)
    */
 
    $week_w = array('일','월','화','수','목','금','토');
    $week_N = array('','월','화','수','목','금','토','일');
 
    echo "date(\"w\") : ".$week_w[date("w")]."<Br>";
    echo "date(\"N\") : ".$week_N[date("N")]."<Br>";
 
?>
cs

▼ 배열 순서에 요일을 넣고 한글 요일명을 구했습니다.


▼w는 소문자고 N은 대문자로 한건 오타가 아니라
PHP 메뉴얼 사이트에 그렇게 쓰고 있어서 그대로 기술했습니다.
대소문자에 따라 기능이 달라집니다.



▼소문자 n은 월 숫자 표현이이고 w 대문자는 주차이기 때문에 
대소문자를 유의하여 쓰셔야 합니다.





마무리

시간 요일이 잘못나온다면 해당 블로그를 참조해주세요


댓글을 달아 주세요



file_get_contents 파일 읽어오기 


file_get_contents를 활용 하는 방법에 대해 설명하겠습니다.
각종 JSON 파싱이나 XML 파싱으로 데이터를 다루는 일이 많아져서
빈도가 높아진 함수입니다. 

▼ 우선 PHP가 제공하는 레퍼런스는 아래와 같습니다.

▼ 제가 정리한 소스는 아래와 같습니다. 
압축을 풀어 웹서버에서 확인해보세요 
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
<?php
 
//헤더 정보를 등록한다.
$opts = array(
    'http' => array(
        'method' => "GET",
        'header' => "Accept-language: utf-8\r\n" .
            "Cookie: foo=bar\r\n"
    )
);
$context = stream_context_create($opts);
 
//파일로도 정보를 읽어올 수 있다.
// $filename = 파일 내지, URL를 통해 해당 데이터를 읽어 올수 있다.
// $use_include_path = 참조(include)된 내용까지 읽어 올지
// $context = 헤더 정보를 입력
// $offset = 몇번째 데이터 부터 읽어올지
// $maxlen = 최대 얼마나 많은 양을 읽어 올지
$file2 = file_get_contents('./file.txt'true$context18);
echo $file2;    //2번째 데이터부터 8개의 데이터니 2~9까지 노출 된다.
 
//URL로 해당 사이트의 정보를 읽어올수 있다.
$file1 = file_get_contents('http://www.google.com/webhp?hl=en');
echo $file1;
 
?>
cs



▼ URL을 가지고 올때 아래처럼 오류가 날 경우는 보안상 해당 방식으로의 접근을 막아놓았기 때문입니다. 
$filename 
- URL을 읽어올시에는 서버 설정에 따라 접근이 불가합니다. PHP라면 php.ini 에 allow_url_fopen가 ON이 되어 있어야 합니다. 


▼Offset으로 불필요한 정보를 건너 뛸수 있고
Maxlen은 웹사이트를 어디까지 읽어올지 결정할 수 있습니다.
이 두변수를 통해서 어디부터 어디까지 파싱할지 결정하시면 됩니다.
$offset = "1" 
- 2번째 데이터부터 가져온다.
$maxlen = "8" 
- 총 8개의 데이터를 가져온다 띄워쓰기 및 개행 문자도 length에 포함

▼ 제가 정리한 해당 소스를 출력 시켜보았습니다.
첫번째는 미국 구글을 URL로 파싱해서 가져왔고
두번째는 file.txt에 1234567890의 내용을 가져왔습니다.





마무리

PHP는 프론트엔드 개발을 위한 함수가 많은 언어 입니다.


댓글을 달아 주세요



PHP에서 시간이 잘못 노출 되는 경우 


PHP를 date의 시간이 알 수 없는 시간으로 보일때가 있습니다.
아파치 설정 문제이므로 간단하게 해결해보겠습니다.

▼아래처럼 코드를 작성하고 웹에서 확인해보자 
1
2
3
<?php
    echo date("Y-m-d h:i:sa");
?>
cs



▼시간이 좀 이상하게 나오고 있습니다. 
래서 네이버 시계와 비교하니 시간 차이가 꽤 나고 있습니다. 
8시간 정도 차이가 나네요 뭔가 시간 노출이 이상합니다.



▼PHP.ini를 열어보고 date.timezone을 찾아보면
유럽에 베를린으로 기본 설정이 되어 있습니다.


▼해당 부분을 아래처럼
Asia/Seoul
로 변경하였습니다. 
그리고 아파치를 다시 시작하게 되면 


▼ 아래처럼 시간이 한국 기준으로 나오게 됩니다.
시간 1초 정도가 안맞은 이유는 캡쳐할때 1초가 지났기 때문입니다. 






마무리

 주말이 너무 빠르네요


댓글을 달아 주세요

  • ㄷㄷㄷㄷ 2018.05.16 16:52  댓글주소  수정/삭제  댓글쓰기

    시간설정방법 고맙게 봤습니다
    작성자께서 알려주신대로 변경을 했습니다만....
    한국으로 설정되있음에도 불구하고 2달전 시간이 표시되고 있습니다.
    혹시 다른 수정방법이 있는지 여쭈어보고 싶습니다.

    • Favicon of https://gocoder.tistory.com 고코더 2018.05.18 00:26 신고  댓글주소  수정/삭제

      혹시 서버 시간 설정은 어떻게 되어 있는지확인 해보셨는지요.?
      혹은 소스상에서 date_default_timezone_set으로
      지정되어 있는건 없는지요?
      요즘 중대사가 있어 댓글이 늦었네요^^

  • 베니 2020.03.17 09:44  댓글주소  수정/삭제  댓글쓰기

    PHP 세팅 그대로 사용하려는데 시간 기본 세팅이 한국이 아니라 낭패를 보았습니다 ㅠㅠ

    덕분에 잘 처리하였습니다! 감사합니다~!



PHP환경 셋팅을 위해 APMSETUP7 설치

안녕하세요 고코더 입니다.

오늘은 APMSETUP7을 설치하려고 합니다.
현재 도메인도 사라지고  http://www.apmsetup.com/ 설치 파일만 떠돌아 다니고 있지만
가장 간편하고 오랫동안 손쉽게 써오던 APMSETUP을 설치해보려 합니다.

최신파일이지만 PHP5 버전이라 스터디용으로도 부족하고
가벼운 테스트 용도로 쓰면 딱 적당할거 같습니다



▼ 아래 파일을 받아 압축을 풀어보세요

▼ 그리고 마우스 오른쪽 버튼을 눌러 관리자 권한으로 실행 


한국어로 설치해야겠죠


▼ 여기서 해당 메세지가 발견된다면 현재 80포트로 돌리고 있는 웹 서버를 중단시켜야 합니다.


▼ 자 이제 설치를 시작해보실까요. 32비트 프로그램 이네요


▼ 동의 하시고


▼ 기본 설정 그대로 


▼ 경로는 기본으로 하겠습니다. 왜냐하면 나중에 헷갈리자나요~




▼ 설치가 실행되고요 



▼ 설치를 마무리 하세요


▼ 업데이트 진행이 어차피 안되니 아니요를 클릭


▼ 그럼 바로 실행된 상태로 프로그램이 보입니다.
이래서 80포트를 비워 놓으라고 한거죠



▼ 브라우저에서 http://localhost/ 로 실행 해보시면 
해당 처럼 안내화면이 뜹니다. 


▼ 해당 폴더로 접근하시면 해당 index.php 파일이 보입니다.
여기서 개발을 하시면 됩니다
C:\APM_Setup\htdocs


▼ 해당 URL로 접근해보니 PHP 5버전이 보이네요.
http://127.0.0.1/?page=phpinfo
흠 그래서 이것보다는 XAMPP를 추천합니다. 



APMSETUP7 을  PHP 5.3버전으로 업그레이드 해보세요

-> PHP - APMSETUP7 / 5.3.x 업그레이드




마무리


필요한분은 설치하시면 되겠지만

학습자시라면 아래 URL에 프로그램을 설치하시는게 좋겠네요

저는 가벼운 테스트용일때만 사용합니다. 


-> PHP | APM | 설치 - XAMPP 설치하기 (APMSETUP)

-> PHP | Nginx | MariaDB - WNMP 설치 , 기본셋팅



댓글을 달아 주세요



EditPlus 에서 encoding 변경하기

안녕하세요 고코더 입니다.

소스상에 열심히 인코딩을 지정해도
파일 자체 속성 인코딩을 바꾸지 않으면 여전히 외계어가 뜹니다.
ASP 개발자인 경우에는 이런 문제가 빈번합니다. 

그래서 오늘은 
에디터플러스에서 파일 인코딩을 변경하는 방법을 알아보겠습니다.


▼ 원하는 파일을 오픈한 후에
문서->파일 인코딩 -> 인코딩 변환을 눌러보자
단축키로는 ALT를 누른 상태에서 D, D, C를 누르면 빠르게 접근 가능하합니다.




▼해당 창에서 UTF-8을 설정하고 확인을 누릅니다.


▼저장 전까지는 당연히 해당 파일 인코딩은 변하지 않았다. 저장을 누른 후에 



▼오른쪽 아래에 현재 파일 인코딩 상태를 확인하자 정상적으로 변경 되었다면 성공 



에디터 플러스의 장점은 ansi, euc-kr, utf-8에 상관없이 한글을 깨트리지 않고 파일을 오픈시킵니다.
다른 언어 파일들도 다른 IDE로 파일을 오픈하였는데 한글이 깨지는 상태를 확인하면
에디터 플로스로 인코딩을 바꾸면 가장 깔끔하게 변경이 가능합니다.


마무리


에디터 플러스로 인코딩 속성을 변경하기 가장 좋습니다.


댓글을 달아 주세요



 PHPstrom , Webstorm portable install


PHP스톰 쓰면서 이클립스에 비해  가장 아쉬운건 포터블 형태가 아닌것이다.
A, B라는 프로젝트를 동시에 진행 한다면 이클립스의 경우
A프로젝트의 셋팅 해놓은 이클립스와
B프로젝트의 셋팅 해놓은 이클립스를 다른 파일로 실행함으로써
작업 내역을 계속 이어 나갈 수 있다는 특징이 있다.

그런데 jetBrain IDE들은 알다시피 설치버전이라 editplus 처럼 하나만 설치가 가능하다.
PHP 프로젝트를 두개를 맡고 있다면 매번 폴더를 오픈해야 한다. 불편하다.



그래서 오늘은 PHPstrom , Webstorm 이 IDE를 포터블로 만드는 방법을 알아보자.

우선 먼저 써놓은 PHP스톰 강의를 보고 와도 좋을 것이다.http://gocoder.tistory.com/45

우선 최신버전 Storm을 받자 PHPstrom , Webstorm두개다 포터블로 만드는 방법은 같으니 
PHP스톰으로 예시를 들어보겠다.

▼우선 아래 URL에 가서 최신버전을 다운로드 하자



▼그 다음 받은 EXE 파일을 마우스 오른쪽을 눌러 반디집으로 열기로 눌러보자 
이전 강의에서도 말씀드렸다시피 개발자면 반디집을 쓰는 걸 추천!



▼그럼 마치 압축파일 처럼 보일것이다. 해당 이미지에 화살친 부분을 잡고 원하는 폴더로 드래그 드롭 하면 압축이 풀린다.


▼그다음 Bin 폴더에 접근해서 idea.properties 파일을 메모장이나 editPlus로 열어보자




▼해당 네모친곳을 이렇게 바꿔보자 ${user.home} -> ${idea.home}
설정 내용들을 OS 사용자 계정에 등록하는게 아니라 각 폴더에 등록하겠다는 말이다.



▼그리고 앞에 있는 주석을 제거 해보자 최종 모습은 아래와 같다.



▼그리고 다시 bin폴더에서 phpstorm64.exe 를 클릭하여 프로그램을 실행해보자.



▼설정부터 묻는 화면이 나온다 마치 처음 설치 했던 거처럼!!!!





이렇게 하면 이제 포터블한 IDE이기 때문에 프로젝트마다 하나의 스톰을 사용할 수 있다.
그리고 프로그램을 여러개를 실행할 수도 있다.
마치 이클립스 처럼 사용할 수 있다는 말이다.

참고로 추가 팁!!
해당 포터블 버전으로 사용하면 
인증 없이 무료 사용 30일마다 새로 압축을 풀어 오늘 배운 설정을 셋팅 하면
포터블로 계속 쓸수 있다.~~



마무리

jetBrains 가 IDE를 통합 할 것으로 생각 듭니다. 닷넷 IDE까지 나온거 보니 거침 없는 행보로 보입니다.


댓글을 달아 주세요




PHP스톰  HTML in PHP


오늘은 PHP스톰에서 HTML에 써져있는 PHP들의 색깔을 바꿔보려 합니다.
소스 하일라이팅 기능을 제공 받아야 겠죠

▼PHP스톰에서 HTML을 열면 아래처럼 인라인 PHP 소스가 황당한 모습으로 보입니다.
색깔도 없고 코드 어시스트도 못받는 형태입니다.




▼이제 그럼 해결방법을 찾아가보자 setting에 들어갑니다 (컨트롤+알트+s) 
그리고 검색창에 "file types"라고 검색 그럼
editor ->file types를 찾을수 있습니다.

▼그리고 PHP를 찾는다. 그리고 아래 화면 처럼 +를 눌러서 *.html 등을 입력하면 된다. +를 눌러보자


▼우선 *.html을 넣고


▼그다음  *.htm도 넣고. 그리고 Html5등 각자 필요한 확장자를 넣습니다.


▼그리고 OK를 누르고 나오면 바로 이렇게 HTML에 써져 있는 PHP를 볼 수 있습니다다. 
 





마무리

PHP스톰은 쓸수록 편합니다.
최신버전일 수록 더 좋아요











댓글을 달아 주세요