register_form.php 에서 preg_replace

register_form.php 에서 preg_replace

QA

register_form.php 에서 preg_replace

본문

register_form.php 파일에 다음과 같은 코드가 있습니다.


$agree  = preg_replace('#[^0-9]#', '', $_POST['agree']);
$agree2 = preg_replace('#[^0-9]#', '', $_POST['agree2']);

 

register.skin.php 에서 회원가입에 대한 약관을 동의하고 form 태그를 통해 전송하고

$_POST['agree'], $_POST['agree2'] 를 통해 정보를 받습니다.

 

1. agree, agree2 는 value="1" 입니다.

왜 preg_replace 를 사용해 #[^0-9]# 부분을 ""로 치환하는 건가요?

#[^0-9]# 는 숫자를 제외한 나머지를 치환한다는 의미인데

어차피 value에는 1만 들어있어서 다른 문자 존재할 수 없지 않나요?

 

2. preg_replace 에 패턴에는 플래그를 안써도 되나요?

regexr.com 에서 test 해봤는데 g플래그를 써야 숫자 이외에 나머지 모두를 선택하는데

g플래그를 안쓰면 첫번째만 선택이 돼요.

preg_replace 에서는 g 플래그를 안써도 되는건가요?

이 질문에 댓글 쓰기 :

답변 1

가장 좋은 방법은 PHP에서 각각의 변수를 찍어 보세요.  이것보다 정확한 것은 없습니다.

 

https://sir.kr/g5_tip/13330

 

https://sir.kr/g5_plugin/7938

 

제일 좋은 것은 xdebug라고 합니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 15
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT