我想在多个页面上运行来自 awesomeQuery.php 的代码,所以我使用PHP require。
<?php require_once("awesomeQuery.php") ?>
awesomeQuery.php 看起来像这样:
<?php
require 'vendor/autoload.php';
use Parse\ParseQuery;
[query code here that works]
?>
现在这里的 spiffyPage.php :
<?php
//This line here works beautifully!
require_once("awesomeQuery.php");
//If I make a new query code in this file I get the following error:
//Fatal error: Class 'ParseQuery' not found in /path/spiffyPage.php on line 45
[some other similar query code]
?>
这个新查询无效吗?我不是已经从 awesomeQuery.php 致电use Parse\ParseQuery
了吗?它是否不会延续到 spiffyPage.php ?
如果我在 spiffyPage.php 中单独调用use Parse\ParseQuery
,那么新的查询代码 工作...但我会而不必每次都称它为!
我的猜测: awesomeQuery.php 中的所有PHP代码都会在粘贴到 spiffyPage.php 之前执行,因此代码{{ 1}}不会粘贴到 spiffyPage.php 。它是否正确?如果是这样,我可以将代码粘贴到另一个文件的文件中而不先执行代码吗?
答案 0 :(得分:1)
PHP手册清楚地说明了
注意: 导入规则是基于每个文件的,这意味着包含的文件不会继承父文件的导入规则。