gpt4 book ai didi

php - 函数内声明函数的作用域

转载 作者:IT王子 更新时间:2023-10-28 23:54:36 24 4
gpt4 key购买 nike

我想知道为什么当函数在类函数中声明时,php 会以不同的方式处理函数中已声明函数的作用域。

例如:

function test() // global function
{
function myTest() // global function. Why?
{
print( "Hello world" );
}
}

class CMyTestClass
{
public function test() // method of CMyTestClass
{
function myTest() // This declaration will be global! Why?
{
print( "Hello world" );
}
}
}

}

有人可以向我解释为什么会这样吗?谢谢你的回答。

你好。

最佳答案

在 PHP 中,所有函数始终是全局的,无论您如何或何时定义它们。 (匿名函数部分是异常(exception)。)因此,您的两个函数定义都是全局的。

From the documentation :

All functions and classes in PHP have the global scope - they can be called outside a function even if they were defined inside and vice versa.

关于php - 函数内声明函数的作用域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4747908/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com