2012-12-29 2 views
3

입력란에 사용자 입력 공간이나 아무 것도 입력하지 않으면 더하기 기호 +가 여전히 내 PHP 백엔드로 전달됩니다. 전후에 모든 플러스 기호를 제거하고 싶습니다 (예 : '+++ school ++'에서 'school'을 반환하십시오.). php에 strip_tag와 같은 멋진 기능이 있지만이 경우 사용해야하는 것이 확실하지 않습니다. . 또는 그 의미 공간/+ 심지어 쿼리 문자열에 입력하지 않을 수 있도록 (? 어쩌면 자바 스크립트를 통해)를 구성하는 방법은 무엇입니까쿼리 문자열에서 더하기 기호 제거 PHP

답변

3

당신은 사용할 수 있습니다 :

$input = trim(urldecode($input)); 

경우 $ 입력 다음과 같은 게시 매개 변수 중 하나입니다 : $input = $_POST["query"]; // 쿼리가 POST 매개 변수 인 경우

편집 : urldecode를 사용하는 또 다른 이점은 인코딩 된 다른 모든 영숫자가 아닌 문자. 에서

: 쿼리 문자열에서 http://php.net/manual/en/function.urldecode.php

+2

+1 정답입니다. 초과 공간을 제거하기 위해서'trim (urldecode ($ input))'을 원할지도 모르겠다. –

+0

니스 - 당신의 설명이 절대적으로 정확합니다. – ajacian81

+0

** - 1 ** 쿼리 문자열은 이미 URL 디코딩을 처리하는'$ _GET'에서 제공됩니다. – Eric

-1
$str = '++school++'; 
return trim(urldecode($str) 
+0

@ ajacian81 OP 입력에서 모든'+'를 제거하고, 실수로 간과하지 않으면 urldecode를 공간으로 단순하게 디코딩하십시오. 분명히 cluterred OP 입력 – slier

0

+$_GET의 공간이된다. 앞뒤 공백을 없애기 만하면됩니다.

trim($_GET['param'])