이 글에서는 PHP 함수 import_request_variables()의 사용법을 예시와 함께 분석합니다. 참고하실 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
import_request_variables 함수는 Register_global = off일 때 GET/POST/Cookie 변수를 전역 범위로 가져올 수 있습니다.
설명
bool import_request_variables ( string types [, string prefix])
GET/POST/쿠키 변수를 전역 범위로 가져옵니다. 이 함수는 Register_globals를 비활성화했지만 여전히 일부 전역 변수를 사용하려는 경우에 유용합니다.
type 매개변수를 사용하여 가져와야 하는 변수를 지정할 수 있습니다. 문자 'G', 'P' 및 'C'는 각각 GET, POST 및 쿠키를 나타내는 데 사용할 수 있습니다. 이러한 문자는 대소문자를 구분하지 않으므로 'g', 'p' 및 'c'를 조합하여 사용할 수 있습니다. POST에는 POST 메서드를 통해 업로드된 파일 정보가 포함됩니다. "gp"를 사용하면 POST 변수가 GET 변수를 동일한 이름으로 덮어쓰므로 이 문자의 순서에 유의하세요. GPC 외부의 모든 문자는 무시됩니다.
prefix 매개변수는 변수 이름의 접두사 역할을 하며 전역 범위로 가져온 모든 변수 앞에 배치됩니다. 따라서 "userid"라는 GET 변수가 있고 "pref_"를 접두사로 제공하면 $pref_userid라는 전역 변수를 얻게 됩니다.
다른 전역 변수(예: SERVER 변수)를 가져오는 데 관심이 있는 경우 extract() 사용을 고려해 보세요.
참고: 접두사 매개변수는 선택사항이지만 접두사를 지정하지 않거나 빈 문자열을 접두사로 지정하면 E_NOTICE 수준 오류가 발생합니다. 참고 수준 오류는 기본 오류 보고 수준을 사용하여 표시되지 않습니다.
<?php // This will import GET and POST vars // with an "rvar_" prefix import_request_variables("gp", "rvar_"); echo $rvar_foo; ?>
전역 변수 모음을 선택적으로 등록하려면 import_request_variables() 함수를 사용하세요. 이 함수를 사용하여 $_GET, $_POST 및 $_COOKIE 값을 가져올 수 있습니다. 가져온 각 변수에 접두사를 추가할 수도 있습니다.
매개변수의 문자열 유형에는 g, p, c 문자 또는 세 문자의 조합이 허용됩니다. 그 중 "g"는 GET 변수를 나타내고 "p"는 POST 변수를 나타내며 "c"는 쿠키를 나타냅니다. 참고: 3개의 문자 순서에 차이가 있습니다. "pg"를 사용하면 POST 변수가 $_GET 변수를 동일한 이름으로 덮어쓰고, 반대로 "gp"를 사용하면 $_GET 변수 배열을 덮어씁니다. $_POST보다 우선합니다.
import_request_variable() 함수를 사용하여 변수 가져오기를 구현하는 스크립트 예시는 다음과 같습니다.
//导入POST提交的变量值,前缀为post_ import_request_variable("p", "post_"); //导入GET和POST提交的变量值,前缀为gp_,GET优先于POST import_request_variable("gp", "gp_"); //导入Cookie和GET的变量值,Cookie变量值优先于GET import_request_variable("cg", "cg_");
import_request_variables() 함수에서 "pg 매개변수"를 사용하는 경우 다음 스크립트 예를 참조하세요.
<?php if(isset($_REQUEST['btn_submit'])){ echo "正常取得的表单POST变量值:".$_REQUEST['Username']."<br />"; import_request_variables("pg", "import_"); //显示导入的变量名称 echo "使用import_request_variables函数导入的变量值:".$import_Username; } ?> <form id="test_form" name="test_form" method="POST" action=""> 请输入您的名字: <label> <input type="text" name="Username" id="Username" /> </label> <label> <input type="submit" name="btn_submit" id="btn_submit" value="提交" /> </label> <br /> </form>
양식을 작성하고 제출하면 스크립트가 브라우저에 제출된 이름을 표시합니다.
참고: 접두사 매개변수는 필수입니다. 접두사가 지정되지 않거나 변수 접두사로 빈 문자열이 지정되면 PHP는 E_NOTICE 오류를 발생시킵니다.
import_request_variables() 함수는 다음 상황에 적합한 중간 방법을 제공합니다.
1. 사용자가 슈퍼 변수 배열을 사용할 수 없는 경우
2. php.ini 구성 파일의 Register_globals 매개변수가 Off인 경우(PHP 5 이후 버전의 기본값은 Off), import_request_variables를 사용하여 GET/POST/Cookie 슈퍼 변수 배열을 전역 범위로 가져옵니다.
3. 개발 중에 도입된 변수 범위가 선언되는 한 $_GET 또는 $_REQUEST에 긴 슈퍼 전역 배열 이름을 쓸 필요가 없습니다.
더 많은 PHP 관련 콘텐츠에 관심이 있는 독자는 이 사이트의 특별 주제를 확인할 수 있습니다. "PHP 작업 및 연산자 사용법 요약", "PHP 네트워크 프로그래밍 기술 요약", " PHP 기본 구문 입문 튜토리얼", "PHP 오피스 문서 조작 스킬 요약(워드, 엑셀, 액세스, ppt 포함)", "요약 PHP 날짜 및 시간 사용법》, "php 객체 지향 프로그래밍 입문 튜토리얼", "php 문자열(문자열) 사용법 요약", "php mysql 데이터베이스 운영 입문 튜토리얼" 그리고 "PHP의 일반적인 데이터베이스 운영 기술 요약"
이 기사가 PHP 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.