본문 바로가기

Programming Language/PHP

(38)
[PHP] preg_match ( 패턴일치 & 정규표현식 적용) 시작에 앞서, * 정규표현식에 대해 자세히 알고싶으신 분 or 정규표현식을 처음보시는 분은 아래 URL을 참고해주세요. https://choseongho93.tistory.com/130 [Regex]정규표현식 기초 ( 정의 및 문자별 의미 ) / 자주 사용하는 정규표현식 ● 정규 표현식이란? : 문자열을 바탕으로 검색해 패턴과 일치하는지 조사하고, 분할하는 문자열 처리 방법입니다. * 문자 클래스를 정의할 때 대괄호 안에 사용하는 메타 문자 메타 문자 설명 / 이스케이프 문자.. choseongho93.tistory.com ● preg_match() 형식 $result = preg_match($pattern, $subject) (preg_match()를 실행한 결과, 일치하면 1, 일치하지 않으면 0, ..
[PHP] URL인코딩 & 디코딩 * URL에 공백이나 한글 같은 멀티바이트 문자가 포함되었다면, URL 인코딩이 필요합니다. ​ ​ ● URL 인코딩 : rawurlencode()와 urlencode()함수가 있습니다. 두 함수는 공백 문자를 취급하는 방법이 다릅니다. rawurlencode()는 공백문자를 %20로 변환하고 urlencode()는 +로 변환합니다. 주로, urlencode()함수는 쿼리 문자열이나 쿠키값으로 사용하는 형식입니다. ​ $page변수에 인코딩을 해줄 페이지의 파일명을 값으로 넣줍니다. $path변수에 실제 인코딩을 해주는 함수를 사용하고, 파라미터로 $page변수를 넣어줍니다. $url 변수에 실제 URL의 도메인과 경로를 붙여서 만들어줍니다. 위처럼 멀티바이트문자가 인코딩 결과를 보실수있습니다. ● UR..
[PHP] 배열의 요소 삭제 & 치환 & 연결과 분리, 중복제거 (array_merge, array_combine, array_unique 등) ● 배열의 요소 삭제 : array_splice()를 사용해 배열에서 요소를 삭제할수있습니다. 첫번째 인수인 배열 $myArray에서 $start로 지정한 위치부터 $length에서 지정한 개수만큼 요소를 삭제합니다. $lengh를 생략하면 초깃값이 0이 되므로 한 개도 삭제되지 않습니다. $start를 음수로 하면 뒤에서부터 센 위치가 됩니다. (아래 예제를 통해 추가 설명해드리겠습니다.) $myArray에 인덱스 배열을 a~e까지 대입해줍니다. array_splice함수에 첫번쨰 인자에 해당 배열을 입력해주고, 두번째 인자에 삭제될 인덱스번호를 넣어줍니다. 1,2를 넣어줬으므로, "b", "c"가 삭제됩니다. 삭제된 값은 $removed배열에 대입됩니다. 출력 결과는 인수로 전달한 $myArray에서..
[PHP] 배열의 정의 및 explode, implode, define함수 ● 배열 : 배열은 여러개의 값을 다룰때 매우 유용합니다. 우선, 배열을 사용하면 여러개의값을 하나의 그룹처럼 다룰수있습니다. 배열은 대괄호 안에 값만 들어있는 배열과 Key(키)와 Value(값)이 짝으로 이루는 연관 배열이 있습니다. 아래 예재들을 통해 확인해보겠습니다. * 인덱스 배열 $team이라는 변수에 [] (대괄호)로 String값을 넣어줍니다. 위 배열 정의에서 설명했듯이 이 예제는 인덱스배열이라 하며, 정렬 순서인 인덱스 번호로 값에 접근합니다. 배열은 0인자(Key)부터 시작합니다. 즉, $team[0] = "김철수" / $team[1] = "김민희" / $team[2] = "박민수" 입니다. 0인자(키)에 "김철수"(값)이 들어있습니다. 이제 for문을 통해 $team배열안에 있는 값..
[PHP] sprintf(), vprintf(), number_format() ● sprintf() : printf()는 형식 문자열을 적용한 문자열을 출력하지만, sprintf()는 형식 문자열을 적용한 문자열을 반환하는 함수입니다. 변수 3개를 형식화해서 문자열로 조합해줍니다. 그문자열을 변수 $id에 대입하고 echo를 통해 출력해보았습니다. ● vprintf() : 문자열 안에 치환할 값이 여러개 있을때 printf()대신 vprintf()를 사용하면 치환할 값을 배열로 지정할 수 있습니다. vprintf()에도 변수 3개를 선언해주고 $data변수에 배열로 3개의 변수를 대입해줍니다. 그리고 형식을 $format변수에 만들어주고 vprintf()함수를 통해 파라미터로 대입해줍니다. ● number_format() : 수치를 세자릿수 쉼표로 구분하는 numer_format(..
[PHP] 문자열을 형식화해서 출력하기 - printf(), 타입지정자 ● 형식화해서 문자열을 표시하는 printf() : 변수 값은 echo(), print(), print_r()을 사용해서 문자열을 포함시켜서 표시할수 있지만, 이 세가지 명령은 값을 있는 그대로만 출력합니다. 반면에, printf()는 값을 형식을 갖춘 문자열로 지정하여 출력할 수 있습니다. printf()의 f가 format이므로 형식 문자열을 포맷 문자열이라고도 합니다. ​ 사용 형식) printf('형식 문자열', 값 1, 값 2, ~~~ , 값 3) 위 예제에서는 echo 와 printf를 비교해보았습니다. echo는 있는 그대로 상수값 M_PI값을 그대로 출력하는 반면에 printf는 '%3f'로 지정하므로 3.142처럼 소수점 아래 세쨰자리까지 출력합니다. 즉, 반올림해서 값을 포맷하여 출력합..
[PHP] 히어 다큐먼트 구문 및 Nowdoc 구문 (이스케이프 없이 편하게 문장 만들기) ● 히어 다큐먼트 구문 : 여러 행의 문자열을 좀더 간단히 만들 수 있습니다. 히어 다큐먼트는
[PHP] 문자열에 사용할 수 있는 이스케이프 시퀀스 ● 문자열 : 문자열은 작은따옴표(')나 큰따옴표(")로 감싸서 만들 수 있습니다. 이 두가지는 문자열 안에 변수나 이스케이프 시퀀스(역슬래시(\) 뒤에 한 문자나 숫자 조합이 오는 문자 조합)를 포함할 때 사용하는 방법에서 차이가 납니다. 문자열에 변수를 넣어 표시하고 싶거나 개행등의 특수문자를 넣고싶다면 큰따옴표로 감싼 문자열을 사용합니다. ​ 문자열에 변수를 넣을 때 $thePrice원과 같이 공백없이 붙여 사용하면 $thePrice원이 통째로 변수명으로 인식되므로 {$thePrice}원과 같이 변수를 중괄호({})로 감싸면 변수와 문자를 구별할수있습니다. ▶ 큰따옴표 문자열에 사용할 수 있는 이스케이프 시퀀스 기호($)를 표시하려면 이스케이프 시퀀스를 사용해야 합니다. $1처럼 달러 기호가 표시되..