一、php语法环境
有多种嵌入到html代码中的php代码形式:
1、标准形式
<?php
这里是代码
?>
2,标准形式
<script language=”php”>
这里是php代码
</script>
3,短标签形式——不推荐
<?
这里是php代码
?>
此形式依赖于php.ini中的一项设置:
short_open_tag = On
二、基本语法形式
1、区分大小写:
a、主要是指变量名区分大小写,
b、常量通常也区分,但常量也可以自己设定为不区分,
c、函数名不区分
d、系统中的关键字也不区分大小写,如 if ,else ,for
2、语句结束符,用分号
一个php标记块中的最后一个分号可以省略
php结束标记省略则不能省略最后一个分号
建议都写上,以防漏写报错
三、变量
变量是包含了一个名称和一个值得“标识符”。
在php中,变量应该这样理解:$v1=1; $v1==>引用,指代==>数据:1
当我们在代码中使用$v1这个变量名,就是指使用“1"这个数据值。比如 :echo$v1;输出1
当我们在代码中对$v1这个变量进行一定的运算,也就是对这个数据1进行运算
如:$v1++; 就是将1的值自加,即结果数据变成2;
形式:变量必须以$开头,后面紧跟变量名
注意:通常,在能够出现变量的语法中,只要出现$符号并在其后紧挨着的字符,就会被识别为一个变量,即不存在该变量;
2变量的基本使用
定义变量:直接给变量赋值就是定义,不支持js中定义但不赋值的语法
取值:所有需要一个变量值的语句中,就会取得该变量的值
判断变量是否存在isset();存在返回true,不存在返回false,如果一个变量的值是null,也返回false;
修改变量值:第二次及以后给同一个变量赋值就算修改变量值;
删除unset():断开变量名跟数据之间的引用关系
3、命名规则
基本规则:1、只能使用大小写,下划线(_),数字
2、数字不能开头
3、不能跟所在环境的关键字重名,比如:if for function。。。
行业规则:
1,驼峰命名法:
示例:name, myName, myFatherName
2,帕斯卡命名法:
示例:Name, MyName, MyFatherName
3,下划线间隔法:
示例:name, my_ame, my_father_name
变量间的传值方式
总体说明:
1,这里讨论的传值方式是指:一个变量对另一个变量
2,它不仅仅适用于赋值语句,也适用于其他有同样含义的语句,比如:函数的实参到形参
3,传值方式只有2种:值传递,引用传递
4,php中,所有变量,默认都是值传递。
5,要想使用引用传递,必须使用引用传递的符号: &
值传递:指讲一个变量的数据值拷贝一份,然后赋值给另一个变量,复制完之后这两个变量就没有关系了,相互独立
引用传递:是指将一个变量的引用关系拷贝一份,然后赋值给另一个变量,即另一个变量也同样由该关系决定了指向某个数据;如果一个变量的数据发生改变另一个也会随着改变,但是在引用传值的情况下,unset()(删除)一个变量,另一个变量不受影响;
可变变量:所谓可变变量,就是一个变量的名,又是一个变量
如:$v1="abc";$abc=1; $$v1=1
4、预定义变量
1、预定义变量又叫超全局变量,包括:
$_GET,$_POST,$_SERVER,$_REQUEST,$GLOBALS,$COOKIE,$_SESSION,....
2:作用域
php中,自定义的变量的作用域,分两种:全局作用域,局部作用域。
预定义变量的作用域成为 超全局作用域 :全局作用域 + 局部作用域的总和(函数内外全都可用)
数据类型问题:
超全局变量都是数组!