【PHP学习笔记】2:PHP的基本认识和四种变量作用域

重启电脑后再打开Wamp Server图标变黄,但是前面写的基本的PHP还是能运行,原来是自己原来的的MySQL占用了3306端口,导致Wamp Server的不能正常启用,在services.msc里关闭自己的MySQL服务,然后重启Wamp Server即可。

认识PHP

PHP的.php文件可以包含文本、HTML、JS、PHP代码,类似于JSP,它也是在服务器上执行并生成HTML返回给客户端。

上篇安装的Wamp Server是一个包含了 PHP、Apache、Mysql的PHP服务器组件,在这个上面可以方便的学习和开发PHP。

PHP脚本

PHP脚本于PHP文件

.php文件的任何位置,使用

<?php
...
?> 

来包含一个PHP脚本。在PHP脚本中用//...形成单行注释,用/*...*/形成多行注释。

仅含PHP脚本的PHP文件

在仅含有PHP脚本的.php文件中,应当去掉?>闭合符号,因为?>之后的东西,即使是空白符,都会被直接发送给客户端,如果只含PHP脚本,在很多时候这样的做法是不合本意的。

PHP变量

PHP中的变量声明时不需指明类型,也不需要任何关键字,就像JS时不写var一样。看起来就像不需要声明就可以直接使用一样。

变量格式

PHP中的变量由$表征,变量格式的正规式是:

$(字母|下划线)(字母|数字|下划线)*

全局变量和局部变量

在函数内的变量是局部变量,在所有函数外的变量是全局变量。

<?php
$a = "全局变量";
function myfun()
{
    global $a;//声明要使用全局变量$a
    $b = "局部变量";
    echo "函数内访问了", $a, "和", $b;
}

myfun();//调用这个函数
echo "<br>";
echo "函数外访问了", $a;

输出:

函数内访问了全局变量和局部变量
函数外访问了全局变量

在函数外,不能访问函数内的局部变量,这和其它语言一样。需要注意的是,在函数内要访问全局变量,则需要用global关键字声明一次。

GLOBALS数组

全局变量都保存在GLOBALS数组中,通过GLOBALS数组可以在函数体内直接访问全局变量。

<?php
$a = 123;
$b = 456;
function myfun()
{
    echo 'a=' , $GLOBALS['a'];
    echo '<br>';
    $GLOBALS['a']=$GLOBALS['a']+$GLOBALS['b'];
    echo 'a=' , $GLOBALS['a'];
    echo '<br>';
}

myfun();
echo 'a=' , $GLOBALS['a'];

输出:

a=123
a=579
a=579

static作用域

除了局部作用域的局部变量、全局作用域的全局变量外,还有加在局部变量上的static作用域,能够保持该变量在函数结束后不被销毁。

static修饰的局部变量只声明一次,下次执行到声明语句不会再重复声明。

<?php
function myfun()
{
    static $a = 111;
    echo 'a=', $a;
    echo '<br>';
    $a += 1;
}

myfun();
myfun();
myfun();

输出:

a=111
a=112
a=113

参数作用域

函数调用可以传参。

<?php
function myHello($a)
{
    echo '你好,', $a;
}

myHello('刘知昊');

输出:

你好,刘知昊

猜你喜欢

转载自blog.csdn.net/shu15121856/article/details/80755411
今日推荐