php - 在 PHP 的匿名函数中包装变量

标签 php javascript scope anonymous-function

我是一名 JS 开发人员,经常使用自执行匿名函数来最大程度地减少全局范围的污染。

即:(JS)

(function(){
    var x = ...
})(); 

在 PHP 中是否可以/建议使用相同的技术来最大程度地减少函数/变量名称冲突?

即:(PHP)

(function(){

    $x = 2;

    function loop($a){
        ...
    }

    loop($x);

})();

最佳答案

为避免全局污染,请使用类和面向对象的方法: See PHP docs here

要进一步避免污染,请避免静态和全局变量。

在 Javascript 中使用您所展示的闭包是因为它 (Javascript) 是一种基于原型(prototype)的语言,没有通常在基于 OO 的语言中显示的属性(在形成意义上)。

关于php - 在 PHP 的匿名函数中包装变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14846228/

相关文章:

php - 我的 mysql 更新查询有什么问题?受影响的行 = 0

php - MYSQL中如何按字母顺序过滤记录

php - Symfony 4 : DependencyInjection Component - Uncaught ReflectionException: Class does not exist

javascript - 使用 jquery/js 将 html 元素显示为带有暂停的序列

c++ - isalnum 的范围解析运算符

php - SQL添加列名关键字

javascript - 奇怪的 JavaScript 换行符拆分行为

javascript - AngularJS - 变量未在 View 中更新(不使用范围)

javascript范围问题

javascript - 关于JavaScript中 "this"的问题