在PHP中真正需要做什么 - php

我是PHP新手,在使用require时遇到问题。

在PHP中真正需要做什么 - php

'Config.php'在父文件夹中
模型包含测试,“ LaptopModel.php”位于其中。
控制器包含文件“ LaptopController.php”

在Config.php中:

<?php
$host = "localhost";
$username = "admin";

在LaptopModel.php中:

<?php
require '../../Config.php';

在LaptopController.php中:

<?php
require '../Model/test/LaptopModel.php';

问题是服务器处理该文件时,LaptopController.php中的代码实际上是什么?
我以两种方式考虑这一点,即是否导致错误。

<?php
require '../../Config.php';// get the original code from required file
//this cause an error, because from LaptopController.php
//the link to Config.php must be '../Config.php'

否则将是:

<?php
$host = "localhost";
$username = "admin";
//get what was required from Laptopmodel.php file, not the original code

参考方案

问题是服务器处理该文件时,LaptopController.php中的代码实际上是什么?

文件LaptopController.php完全包含您在其中写入的内容。
PHP解释器不会更改文件的内容,无论是在磁盘上还是在将其加载到内存中时。

require不能像复制/粘贴一样工作。它的工作方式更像一个函数调用(但它没有像函数那样引入局部作用域)。

编译LaptopController.php的代码时,语句require '../Model/test/LaptopModel.php';转换为一个操作码,上面写着“在此文件中加载并执行代码”。

在编译阶段不会读取和编译来自LaptopModel.php的代码。它甚至不检查文件(../Model/test/LaptopModel.php)的路径是否存在。如果执行点到达require语句,所有这些都会在运行时发生。

您可以轻松地验证这一点:将require语句放入if语句中,并确保所需的文件具有语法错误(或不存在)。如果执行了包含ifrequire分支,则会触发致命错误,脚本结束。否则它会快乐地运行,因为未执行require语句。

// File 'a.php' doesn't exist
if (false) {
    // This statement never runs, no error is triggered
    require 'a.php';
}

PHP strtotime困境 - php

有人可以解释为什么这在我的服务器上输出为true吗?date_default_timezone_set('Europe/Bucharest'); var_dump( strtotime('29.03.2015 03:00', time()) === strtotime('29.03.2015 04:00�…

PHP-全局变量的性能和内存问题 - php

假设情况:我在php中运行一个复杂的站点,并且我使用了很多全局变量。我可以将变量存储在现有的全局范围内,例如$_REQUEST['userInfo'],$_REQUEST['foo']和$_REQUEST['bar']等,然后将许多不同的内容放入请求范围内(这将是适当的用法,因为这些数据指的是要求自…

php-casperjs获取内部文本 - php

我正在为casperjs使用php包装器-https://github.com/alwex/php-casperjs我正在网上自动化一些重复的工作,我需要访问一个项目的innerText,但是我尚不清楚如何从casperjs浏览器访问dom。我认为在js中我会var arr = document.querySelector('label.input…

PHP:将数组值加在一起 - php

我相信这比标题听起来要难一些,但我可能完全错了。我有一个像这样的数组:[["londrina",15],["cascavel",34],["londrina",23],['tiradentes',34],['tiradentes',21]] 我希望能够采用通用…

PHP-将日期插入日期时间字段 - php

我已在数据库中使用datetime字段存储日期,使用PHP将“今天的日期”插入该字段的正确方法是什么?干杯, 参考方案 我认为您可以使用php date()函数