>  기사  >  백엔드 개발  >  PHP 함수 import_request_variables() 사용 분석_php 기술

PHP 함수 import_request_variables() 사용 분석_php 기술

WBOY
WBOY원래의
2016-05-16 19:55:001365검색

이 글에서는 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 수준 오류가 발생합니다. 참고 수준 오류는 기본 오류 보고 수준을 사용하여 표시되지 않습니다.

<&#63;php
// This will import GET and POST vars
// with an "rvar_" prefix
import_request_variables("gp", "rvar_");
echo $rvar_foo;
&#63;>

전역 변수 모음을 선택적으로 등록하려면 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 매개변수"를 사용하는 경우 다음 스크립트 예를 참조하세요.

<&#63;php
if(isset($_REQUEST['btn_submit'])){
echo "正常取得的表单POST变量值:".$_REQUEST['Username']."<br />";
import_request_variables("pg", "import_");
//显示导入的变量名称
echo "使用import_request_variables函数导入的变量值:".$import_Username;
}
&#63;>
<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 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.