我们来看一段C#代码:
public class Student
{
private string name;
public void SayHello()
{
HttpContext.Current.Response.Write("Hello,I am " + name);
}
}
也就是说,在方法内可以访问外部类声明的变量,但是在PHP中则不一样:
<?php
$name="kym";
function SayHello()
{
if(isset($name))
{
echo("Hello $name");
}
else
{
echo('$name is undefined');
}
}
SayHello();
?>
这里说明一个函数“isset”,这个函数可以检测一个变量是否被定义,或者是否是空字符串。
那么这个结果说明,在函数体内,无法访问到外部变量$name。
在这里在多提一点:一个与unset对应的函数:unset。该函数用于移除一个变量的值。
写个简单的例子:
<?php $name="kym"; if(isset($name)) { echo("Yes"); } else { echo("No"); } unset($name); if(isset($name)) { echo("Yes"); } else { echo("No"); } ?>
关于这些会在之后的垃圾回收里详细提及。








