register_form.php 에서 preg_replace

register_form.php 에서 preg_replace

QA

register_form.php 에서 preg_replace

답변 1

본문

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라고 합니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 72
© SIRSOFT
현재 페이지 제일 처음으로