本文整理匯總了PHP中Magento\Framework\App\RequestInterface::getServerValue方法的典型用法代碼示例。如果您正苦於以下問題:PHP RequestInterface::getServerValue方法的具體用法?PHP RequestInterface::getServerValue怎麽用?PHP RequestInterface::getServerValue使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Magento\Framework\App\RequestInterface
的用法示例。
在下文中一共展示了RequestInterface::getServerValue方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: getCredentials
/**
* Extract "login" and "password" credentials from HTTP-request
*
* Returns plain array with 2 items: login and password respectively
*
* @return array
*/
public function getCredentials()
{
$server = $this->request->getServerValue();
$user = '';
$pass = '';
if (empty($server['HTTP_AUTHORIZATION'])) {
foreach ($server as $k => $v) {
if (substr($k, -18) === 'HTTP_AUTHORIZATION' && !empty($v)) {
$server['HTTP_AUTHORIZATION'] = $v;
break;
}
}
}
if (isset($server['PHP_AUTH_USER']) && isset($server['PHP_AUTH_PW'])) {
$user = $server['PHP_AUTH_USER'];
$pass = $server['PHP_AUTH_PW'];
} elseif (!empty($server['HTTP_AUTHORIZATION'])) {
/**
* IIS Note: for HTTP authentication to work with IIS,
* the PHP directive cgi.rfc2616_headers must be set to 0 (the default value).
*/
$auth = $server['HTTP_AUTHORIZATION'];
list($user, $pass) = explode(':', base64_decode(substr($auth, strpos($auth, " ") + 1)));
} elseif (!empty($server['Authorization'])) {
$auth = $server['Authorization'];
list($user, $pass) = explode(':', base64_decode(substr($auth, strpos($auth, " ") + 1)));
}
return [$user, $pass];
}