如何创建仅在文件中可见的PHP函数?
如何创建仅在文件中可见的PHP函数?外部文件不可见。换句话说,与C中的静态函数等价的东西实际上无法使函数仅在文件中可见。但是,你也可以做类似的事情 例如,创建lambda函数,将其分配给变量,并在完成以下操作时取消设置:如何创建仅在文件中可见的PHP函数?,php,Php,如何创建仅在文件中可见的PHP函数?外部文件不可见。换句话说,与C中的静态函数等价的东西实际上无法使函数仅在文件中可见。但是,你也可以做类似的事情 例如,创建lambda函数,将其分配给变量,并在完成以下操作时取消设置: $func = function(){ return "yay" }; $value = $func(); unset($func); 前提是脚本是过程性的 您还可以使用名称空间 最好的办法是创建一个类,并将方法设置为私有创建一个类并将方法设置为私有 <?php
$func = function(){ return "yay" };
$value = $func();
unset($func);
前提是脚本是过程性的
您还可以使用名称空间
最好的办法是创建一个类,并将方法设置为私有创建一个类并将方法设置为私有
<?php
class Foo
{
private $bar = 'baz';
public function doSomething()
{
return $this->bar = $this->doSomethingPrivate();
}
private function doSomethingPrivate()
{
return 'blah';
}
}
?>
使用,以应用您自己的可见性
在PHP世界中,名称空间设计用于解决两个问题:
库和应用程序的作者在创建
可重用的代码元素,如类或函数:
闭包/lambda函数(注意,这些函数至少需要PHP5.3)可能是您唯一的选择,除了重新考虑您需要对其他文件隐藏函数之外。您可能实际上不需要这样做。当您在PHP上包含文件时,就好像您将它们附加在一起,在C/C++中,您正在“导入”变量/函数/类。