1.连接符
$color = 'red'
第一种连接方式: echo "my color is $color"
第二种连接方式: echo "my color is". $color ."<br>"//(VB是&链接,js+链接,这个.链接真的反人类)
第三种连接方式: echo"my colo is{$color}"//花括号包住变量
第四种连接方式(相当于js字符串的+=):
$a="hello";
echo $a.="world"; //hello,world
2.变量Scope
1.全局作用域
定义的变量只能在全局读取,函数内部都无法读取。
2.局部作用域
定义的变量只能在局部读取,全局无法读取。
(js的变量是:父域的变量可以让子域读取,反过来则不能。)
如果局部子域想要访问Global变量,则需要提前声明:爸爸,我要用你的变量:
$a = 5;
function son(){
global $a ;
$b = 1;
return a+b
}
son();//6
更或通过所有全局变量的数组来访问全局变量,因此上述的表达式
global $a等价于: $GLOBAL['a'] (下标注意,有引号)
如果想要局部变量的函数在函数执行完成以后不被销毁,即继续在全局域下使用,那么应该提前声明static(静态的)关键字:
<?php
function myTest() {
static $x=2;
echo "结果是:$x";
$x=$x*$x;
}
myTest();//2
myTest();//4
myTest();//16
?>
3.常量(真·全局量)
相当于全局的变量,但是值不可更改或者撤销定义
定义方法:define(name,value,bool),参数很简单,关键在第三个参数,对大小写不敏感吗?默认flase,对大小写敏感,如果强行设置第三个参数为true,则对常量名字大小写不敏感。
4.运算符
+,-,*,/,% ,==,=== 大同小异。
唯一和js不同的是,不等于可以写成 <>,啊哈哈,和vb有点像
5.超全局变量
PHP 超全局变量
$_GET 和 $_POST
用于收集表单数据(form-data)。