我希望能够从任何地方调用函数。所以我可以这样写:file.php:foo();.有可能吗?
答案 0 :(得分:3)
这可能不适合您,但可能会。您可以将函数包装到命名空间类中。
您可以添加一个名为file
的类foo
作为静态函数。因此,您不必致电foo()
,而是致电file::foo()
。然后,您将__autoload这些命名空间类。要做到这一点,你必须在某处定义自动加载功能,例如:
function __autoload($class_name) {
include $class_name . '.php';
}
然后你的file.php看起来像:
class file {
public static function foo() {
//do stuff
}
}
答案 1 :(得分:2)
您应该包含定义您要使用的功能的文件:
include file.php;
然后您通常可以调用您的函数:
foo();
注意:您还可以使用require
,require_once
或include_once
如果您正在使用课程,可以尝试autoloading them。
答案 2 :(得分:1)
如果不包含该功能,则无法在其他文件中使用该功能。
如果这是一个不想包含大量文件的问题,你可以将你的功能合并到一个文件(即.function.php)中,然后在需要时只包含那个文件。
答案 3 :(得分:0)
您必须将include file.php
添加到您要访问的每个文件foo()
。
要防止来自不同位置的同一文件的多个包含,请使用include_once
语句。然后file.php
只会包含一次。
答案 4 :(得分:0)
你不能这样做是因为你需要带有include或get_contents的调用文件以及eval之后。
如果您需要类似的东西,可以使用命名空间。
<强>参考强>
http://php.net/manual/pt_BR/language.namespaces.definition.php
答案 5 :(得分:0)
如果没有PHP编写的语言的广泛知识..哪个是C,你就不能这样做。
如果您有工作知识,请获取PHP的源代码并编译您自己的方法/函数...否则您将必须包含您的文件。