命令规则

  • 变量必须以 $ 符号开头,其后是变量的名称,$ 并不是变量名的一部分。
  • 变量名必须以字母或下划线开头。
  • 变量名不能以数字开头。
  • 变量名只能包含字母(A~z)、数字(0~9)和下划线(_)。
  • 与其它语言不同的是,PHP 中的一些关键字也可以作为变量名(例如 $true$for)。
  • PHP 中的变量名是区分大小写的,因此 $var$Var 表示的是两个不同的变量。


PHP是一种弱类型的语言,在创建变量时无须指定变量类型,PHP会根据变量的值自动将其设定为对应的数据类型。我们可以用赋值符“=”创建变量,


eg:

<?php
$a="hello php";


作用域

全局变量global


$a是在函数外部定义的,所以在函数内部无法访问$a; $b是在函数内部定义的,所以在外部也访问不到。如果要在函数内部访问$x,就必须在函数内先使用global,

<?php
$a = 5;
function foo(){
    $b=1;
    echo $b;
    global $a;
    echo $a;
}

PHP中,全局变量存储在$GLOBALS[index]中,index表示变量名。要达到上述例子中同样的效果,也可以这样写代码

<?php
$a = 5;
function foo(){
    $b=1;
    echo $b."\n";
    echo $GLOBALS['a']."\n";
}
foo();


local、、static、parameter。


传值

变量默认总是传值赋值。当一个变量的值赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量。



输出


引用赋值

使用引用赋值,简单地将一个 & 符号加到将要赋值的变量前(源变量)。

输出


预定义变量

  • $GLOBALS — 引用全局作用域中可用的全部变量。
  • $_SERVER — 服务器和执行环境信息。
  • $_GET — HTTP GET 变量。
  • $_POST — HTTP POST 变量。
  • $_FILES — HTTP 文件上传变量。
  • $_REQUEST — HTTP Request 变量。
  • $_SESSION — Session 变量。
  • $_ENV — 环境变量。
  • $_COOKIE — HTTP Cookies。
  • $php_errormsg — 前一个错误信息。
  • $HTTP_RAW_POST_DATA — 原生 POST 数据。
  • $http_response_header — HTTP 响应头。


以下预定义变量只在命令行执行的时候生效:

  • $argc — 传递给脚本的参数数目。
  • $argv — 传递给脚本的参数数组。





本文同步分享在 博客“羊羽”(other)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

04-08 14:39