php学习笔记之变量及作用域

php学习笔记之变量及作用域

PHP 是什么?

PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器")是一种通用开源脚本语言

PHP语法


PHP 脚本在服务器上执行,然后将纯 HTML 结果发送回浏览器。


基本的 PHP 语法

PHP 脚本可以放在文档中的任何位置。

PHP 脚本以 <?php 开始,以 ?> 结束:

<?php
// PHP 代码
?>

PHP 文件的默认文件扩展名是 ".php"。

PHP 文件通常包含 HTML 标签和一些 PHP 脚本代码。

 如:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>test</title>
</head>
<body>
<table border="1">
    <thead>
    <tr>
        <th> 商品名</th>
        <th>单价</th>
        <th>数量</th>
        <th>操作</th>
    </tr>
    </thead>
    <tbody>
    <tr>
        <td><?php echo "苹果"?></td>
        <td><?php echo "20元/kg"?></td>
        <td><?php echo "100kg"?></td>
        <td>删除</td>
    </tr>
    </tbody>

</table>
</body>
</html>

php注释

<!DOCTYPE html>
<html>
<body>

<?php
// 这是 PHP 单行注释

/*
这是
PHP 多行
注释
*/
?>

</body>
</html>

PHP变量

变量是存储信息的容器

<?php
/**
 * Created by PhpStorm.
 * User: ASUS
 * Date: 2020/1/5
 * Time: 10:48
 */
$txt = "hello world"; //声明变量
unset($txt); //取消变量
$v1 = 1;
$v2 = 2;
$ret = $v1 + $v2;
echo $ret;

php的变量作用域

local
global
static
parameter

php global关键字

<?php
/**
 * Created by PhpStorm.
 * User: ASUS
 * Date: 2020/1/5
 * Time: 10:48
 */
$x = 5;
$y = 20;
function mytest(){
    global $x,$y;
    $y = $x + $y;
}
 mytest();
//echo "$x";
//echo "$y";
echo "$y";

php将所有全局变量存储在一个名为$GLOBALS[index]的数组中,index保存变量的名称,这个数组可以在函数内部访问,也可以直接用来更新全局变量

例如:

<?php
/**
 * Created by PhpStorm.
 * User: ASUS
 * Date: 2020/1/6
 * Time: 10:00
 */
$x=12;
$y=13;
function mytest(){
    $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}

mytest();
echo $y;

static作用域

当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。

要做到这一点,请在您第一次声明变量时使用 static 关键字:

<?php
/**
 * Created by PhpStorm.
 * User: ASUS
 * Date: 2020/1/6
 * Time: 10:15
 */

function myTest(){
    static $x=0;
    echo $x;
    $x++;
    echo PHP_EOL; //换行符
}
myTest();
myTest();
myTest();
myTest();

结果是:0 1 2  3

然后,每次调用该函数时,该变量将会保留着函数前一次被调用时的值

注释:该变量仍然是函数的局部变量。

参数作用域

参数是通过调用代码将值传递给函数的局部变量。

参数是在参数列表中声明的,作为函数声明的一部分:

<?php
/**
 * Created by PhpStorm.
 * User: ASUS
 * Date: 2020/1/6
 * Time: 10:25
 */
function myTest($x){
    echo $x;
}

myTest(1000);

猜你喜欢

转载自www.cnblogs.com/zhangcheng94/p/12155099.html