使用包括整体PHP而不是每个功能

时间:2013-03-22 05:07:12

标签: php

我是非常新的PHP,我习惯写.net,我发现包含难以理解,并希望有人可以帮助我理解如何在文件中正确使用包含一次,而不是每个功能..

以下面的例子为例

<?php
include 'test.php';

function test($a)
{
 echo $value_from_test_php;
}
?>

以上代码似乎不起作用......但是下面的代码

<?php

function test($a)
{
 include 'test.php'

echo $value_from_test_php;
}
?>

我很难弄清楚如何为文件中的所有函数进行包含工作,而不是将其包含在每个函数中,任何建议都非常感谢!

4 个答案:

答案 0 :(得分:1)

变量的范围令人烦恼而不是包含,在PHP中通常包括在每个页面上都包含公共页面/标记的地方,例如页脚,标题等

有4种类型

  • include
  • include_once
  • require
  • require_once

唯一的区别是include会在出现问题时抛出错误并继续执行require将停止进一步执行的脚本

您将在此处获取所有内容 - PHP Documentation

答案 1 :(得分:0)

这完全取决于文件中的内容include - ing!我永远不会建议在函数内部使用include(或循环,或几乎任何带括号的东西)。请记住,所包含文件的内容实际上只是“插入”位置,就在include语句所在的位置。因此,当您include时,您所处的范围(全局,类,函数等)是其内容将被声明的范围。

将完整的类和函数定义放在文件中,include将它们放在要使用它们的文件的顶部。

答案 2 :(得分:0)

第一个示例无效,因为您使用全局范围内的变量,如果您想使用它,请将$value_from_test_php替换为$GLOBALS['my_var_name']

答案 3 :(得分:0)

您的问题与包含无关,而是variable scope。默认情况下,函数外部定义的变量在函数中不可用。

如果不确切地知道你正在尝试做什么,很难建议最好的解决方案,但文档(上面链接的)应该让你开始。