好吧,我的朋友给了我这段代码,用于请求标头并将它们与标头应该是什么进行比较。它工作得很好,但我不知道为什么。这是代码:
$headers = apache_request_headers();
$customheader = "Header: 7ddb6ffab28bb675215a7d6e31cfc759";
foreach ($headers as $header => $value) { // 1
$custom .= "$header: $value"; // 2
}
$mystring = $custom; // 3
$findme = $customheader; // 4
$pos = strpos($mystring, $findme);
if ($pos !== false) {
// Do something
} else{ exit(); } //If it doesn't match, exit.
我评论了一些与以下问题相关的数字:
这里到底发生了什么?是否将 $headers 设置为 $header AND $value?
同样,不知道这里发生了什么。
为什么将变量设置为不同的变量?这是变量被使用的唯一区域,那么是否有理由将其设置为其他内容?
与3相同的问题。
如果这是一个可怕的问题,我很抱歉,但它一直困扰着我,我真的很想知道它为什么有效。好吧,我明白它为什么会起作用,我想我只是想更具体地知道。感谢您提供的任何见解。