php 判断是post还是get

2025-02-26 08:33:09
推荐回答(3个)
回答1:

PHP 判断是否为Get/Post/Ajax提交

/**
* 是否是AJAx提交的
* @return bool
*/
function isAjax(){
if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest'){
return true;
}else{
return false;
}
}

/**
* 是否是GET提交的
*/
function isGet(){
return $_SERVER['REQUEST_METHOD'] == 'GET' ? true : false;
}

/**
* 是否是POST提交
* @return int
*/
function isPost() {
return ($_SERVER['REQUEST_METHOD'] == 'POST' && checkurlHash($GLOBALS['verify']) && (empty($_SERVER['HTTP_REFERER']) || preg_replace("~https?:\/\/([^\:\/]+).*~i", "\\1", $_SERVER['HTTP_REFERER']) == preg_replace("~([^\:]+).*~", "\\1", $_SERVER['HTTP_HOST']))) ? 1 : 0;
}

回答2:

$_SERVER['REQUEST_METHOD']该变量中存储的是表单提交的方式。
默认为get可用isset($_POST["表单名或字段名"]) 或者$_SERVER['REQUEST_METHOD']=="POST"判断
试过以下是无效的:用$_REQUEST_METHOD 来判断 ,
如:if($_REQUEST_METHOD == “POST”){echo “post:”.$_POST['firstName'].”—”.$_POST["birthday"];}

回答3:

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// …
}