[TOC] >[success] 变量是存储信息的容器 **弱类型语言PHP** PHP是一种弱类型语言。在大多数编程语言中,变量只能保持一种类型的数据,而且这个类型必须在使用变量前声明,例如C语言中。而在 PHP中,变量的类型通常不是由程序员设定的,确切地说,是根据该变量 使用的上下文在运行时(即变量的值)决定的。 ## 创建 PHP 变量 ### PHP 变量规则 1. 变量以 $ 符号开头,其后是变量的名称 2. 变量名称必须以字母或下划线开头 3. 变量名称不能以数字开头 4. 变量名称只能包含字母数字字符和下划线(A-z、0-9 以及 _) 5. 变量名称对大小写敏感($y 与 $Y 是两个不同的变量) 6. 变量名一定要通俗易懂,如: $orderId 或者 $order_id >[danger] 注释:PHP 变量名称对大小写敏感! ~~~ <?php $var = "Bob"; $Var = "Joe"; echo "$var, $Var"; // 输出 "Bob, Joe" $4site = "not yet"; // 非法变量名;以数字开头 $_4site = "not yet"; // 合法变量名;以下划线开头 $i站点is = "mansikka"; // 合法变量名;可以用中文 ?> ~~~ ## 常用输出函数 ### echo `echo` — 输出一个或多个字符串 ~~~ <?php echo "Hello World"; ?> ~~~ ### var_dump `var_dump` — 打印变量的相关信息 ~~~ <?php $v = "xuebingsi"; var_dump($v); ?> ~~~ ## 变量的赋值 ### 传值赋值 把一个值存储到一个变量中。 ~~~ <?php $v = "xuebingsi"; ?> ~~~ ### 传址赋值(引用赋值) 一个变量引用另外一个变量的地址,通过&实现。 ~~~ <?php $a = 1; $b = &$a; $a = 7; echo $b; //输出结果为7 ?> ~~~ ### 可变变量 有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置,例如: ~~~ <?php $a = "hello";//普通变量 $$a = "world";//可变变量 echo $hello; //输出结果为world ?> ~~~ ## 来自 PHP 之外的变量 在实际业务中,我们经验需要跟脚本进行交互,当一个表单提交给 PHP 脚本时,表单中的信息会自动在脚本中可用。这些外部数据或变量保存在一种特殊的全局数组中。 ### $_GET 通过 URL 参数传递给当前脚本的变量的数组。 ~~~ <?php //访问 http://127.0.0.1/test.php?id=30 $id = $_GET["id"]; echo $id; //输出结果为30 ?> ~~~ ### $_POST 通过 HTTP POST 方法传递给当前脚本的变量的数组。 **一个简单的 HTML 表单** ~~~ <form action="test.php" method="POST"> Name: <input type="text" name="username"><br /> Email: <input type="text" name="email"><br /> <input type="submit" name="submit" value="Submit me!" /> </form> ~~~ **一个简单的 HTML 表单** ~~~ <?php // 自 PHP 4.1.0 起可用 echo $_POST["username"]; echo $_REQUEST["username"]; ~~~ ### $_REQUEST 默认情况下包含了 $_GET,$_POST 和 $_COOKIE(后面讲)的数组。 ## 变量用个常用的方法 | 函数名 | 作用 | | --- | --- | | isset | — 检测变量是否设置 | | empty | — 检查一个变量是否为空 | >[danger]练习:通过前端页面Form表单提交数据,在PHP中接收表单推过来的数据,并且打印出来。