鍍金池/ 問答/PHP  HTML/ PHP Require 和 HTTP 請求的問題

PHP Require 和 HTTP 請求的問題

剛遇到個非常不明白的問題:

# 文件 A.php
...
各種代碼
...
# 文件 B.php
...
require_once __DIR__ . "/../public/A.php";
die("b");
...

然后我請求 B 文件的路由后一直報錯:圖片描述

然后修改 B 文件:

# 文件 B.php
...
die("AAAA");
require_once __DIR__ . "/../public/A.php";
die("b");
...

就能 die() 出來了,我就很奇怪難道這包文件還有什么特殊講究么,因為我用 POSTMAN 去測試怎么樣都 OK,唯獨在 PHP 里寫 HTTP 請求會發(fā)生這種情況,實在不明白望賜教

回答
編輯回答
賤人曾

a.php里請求超時啊

2017年4月3日 04:18
編輯回答
柚稚

PHP的執(zhí)行順序是:

  1. 由上到下由左到右執(zhí)行的
  2. 遇到文件加載遞歸1->2

你的錯誤提示是請求超時,所以

require_once __DIR__ . "/../public/A.php";
die("b");

這里沒有走到die("b");就已經(jīng)fetal error程序被中斷了。

2017年2月25日 21:56
編輯回答
練命

你應該寫

dirname(__DIR__)."/xx.php"
而不是
__DIR__ . "/../xx.php"
2017年4月18日 23:00
編輯回答
薄荷糖

嗯首先感謝熱心解答的兄弟們,現(xiàn)在搞定了問題是出在:發(fā)起請求的時候我為了實現(xiàn)使用相同 session 的效果把 Cookie: PHPSESSID=.... 這個PHP用于會話的頭帶上了,估計不能存在相同的會話標識導致PHP無法處理(猜測),最后直接把請求方的 session 轉(zhuǎn)化為 json POST過去,接收方收到參數(shù)將其轉(zhuǎn)化為新會話

2018年8月25日 19:04