php中文学习网http://www.php.cn/
变量
1.必须要以 开 始 。 如 变 量 x 必 须 要 写 成 开始。如变量x必须要写成 开始。如变量x必须要写成x
2.变量的首字母不能以数字开始
3.变量的名字区分大小写
4.变量不要用特殊符号、中文,_不算特殊符号
5.变量命名要有意义(别写xxx,aaa,ccc这种 变量名)
注释
单行注释 : / /
多行注释 : /* */
数据类型
*对于布尔型,FALSE 和 TRUE 不需要加“ ”引号
*对于字符串
在PHP语言中声明字符串有三种方式:
1.用单引号声明(英文半角)
2.用双引号声明(英文半角)
3.用字界符声明(需要输入非常大段的字符串时使用)
1).在变量后面的等号写三个小于号(<<<)。
2).然后在<<<后面写上字符(建议英文大写字符)。如下例中的:ABC
3).然后换行写上任意想写的字符
4).写完后,顶行。在行最开始处,再写上<<<后面的字符和分号。如下例中的:ABC;
区别:
1.双引号解析变量,但是单引号不解析变量。
2.在双引号里面插入变量,变量后面如果有英文或中文字符,它会把这个字符和变量拼接起来,视为一整个变量。一定要在变 量后面接上特殊字符,例如空格等分开。
3.如果在双引号里面插变量的时候,后面不想有空格,可以拿大括号将变量包起来。
4.双引号解析转义字符,单引号不解析转义字符。但,单引号能解析’ 和
\n 双引号能解析成回车 \t 双引号能解析成缩进
这个报错因为双引号没有闭合,在但是得后面就已经显示结束了,所以需要运用到转义字符
放在中间的单引号的前面
5.单引号效率高于双引号,尽可能使用单引号
6.双号和单引号可以互插!!!双引号当中插入单引号,单引号当中插入变量,这个变量会被解析。
7.神奇的字符串拼接胶水——(.)点,用来拼接字符串。(前后都需要加空格)
8.我们将定界符声明字符串视为双引号一样的功能来看待。
*var_dump() 是一个函数。向括号()中间插入变量。这个函数,会打印出来数据类型,还会对应显示变量的长度和值。
*if 语句
如果没有大括号只能写一行的执行代码,基本有 if 和if else 两种
*NULL数据类型
null不是0,FALSE,也不是空格,它代表没有
主要有以下三空情况会产生空(null)类型:
1.通过变量赋值明确指定为变量的值为NULL
2.一个变量没有给任何值
3.使用函数unset()将变量销毁掉
empty()可以向括号中间传入一个变量。这个变量的值如果为false或者为null的话,返回true。
isset()可以向括号中间传入一个或者多个变量,变量与变量间用逗号分开。只要有一个变量为null,则返回false。否则,则返回true。
*数组
资源类型
譬如图片、音乐、视频、网页、数据库等都阔以算是
如何查看数据类型
gettype函数可以将参数的数据类型返回
var_dump可以将输出变量的值和数据类型
我们使用is_ 系列函数。 is_types这一系列的函数,来进行判断某个东西是不是某个类型。如果是这个类型返回真,不是这个类型返回假。
is_int 是否为整型
is_bool 是否为布尔
is_float 是否是浮点
is_string 是否是字符串
is_array 是否是数组
is_object 是否是对象
is_null 是否为空
is_resource 是否为资源
is_scalar 是否为标量
is_numeric 是否为数值类型
is_callable 是否为函数
*转换成布尔值
1,整型的0为假,其他整型值全为真
2, 浮点的0.0,布尔值的假。小数点后只要有一个非零的数值即为真。
3,空字符串为假,只要里面有一个空格都算真。
4,字符串的0,也将其看作是假。其他的都为真
5,空数组也将其视为假,只要里面有一个值,就为真。
6,空也为假
7, 未声明成功的资源也为假
布尔值的true参与运算是会变成整型或者浮点的1布尔值的
false参与运算是会变成整型或者浮点的0
字符串开始处是整型或浮点类型的字符,会转成对应的类型参与运算
强制类型转换有三种方式:
1.用后面的三个函数可以完成类型转换,intval()、floatval()、strval()
2.变量前加上()里面写上类型,将它转换后赋值给其他变量
3.settype(变量,类型) 直接改变量本身
浮点数强制转换成整形,即使点后的数字再大也会被舍去
settype()是把目标变量和原变量类型都改了,而(xxx)$a 是改变目标变量,原变量的类型没有变
define(常量名,常量值)
注:
1.常量值只能为上一章中我们讲到的标量。
2.常量名可以小写,但是通常大写
3.常量名可以不加引号,但是通常加上引号。
4.在字符串中调用常量的时候,必须在引号外面
5.常量名建议只用字母和下划线
可变变量,即再变量后再定义一个:
外部变量:
G
E
T
[
]
,
括
号
里
把
参
数
作
为
字
符
串
放
进
去
就
行
,
_GET[],括号里把参数作为字符串放进去就行,
GET[],括号里把参数作为字符串放进去就行,_GET。
$_GET 的主要作用是将得到get传值的数据
$_POST[],基本的操作和GET一样,但是是接受通过POST上传的数值
全局变量名 | 功能说明 |
---|---|
$_COOKIE | 得到会话控制中cookie传值 |
$_COOKIE | 得到会话控制中cookie传值 |
$_SESSION | 得到会话控制中session的值 |
$_FILES | 得到文件上传的结果 |
$_GET | 得到get传值的结果 |
$_POST | 得到post传值的结果 |
$_REQUEST | 即能得到get的传值结果,也能得到Post传值的结果 |
请再记一句话:以上这些变量全是超全局的。
键名 | 含义 |
---|---|
$_SERVER[“REQUEST_METHOD”] | 请求当前PHP页面的方法 |
$_SERVER[“REQUEST_URI”] | 请求的URI |
$_SERVER[“SERVER_SOFTWARE”] | 用的是哪一种服务器 |
$_SERVER[“REMOTE_ADDR”] | 客户的IP地址 |
$_SERVER[“SERVER_ADDR”] | 当前服务器的IP地址 |
$_SERVER[“SCRIPT_FILENAME”] | 主前请求文件的路径 |
$_SERVER[“HTTP_USER_AGENT”] | 当前访问这个网址的电脑和浏览器的情况 |
$_SERVER[“HTTP_REFERER”] | 上级来源(用户从哪个地址进入当前网页的) |
$_SERVER[“REQUEST_TIME”] | 当前的时间 |
URI 和URL都是网址,但是URL带有了主机地址部份,而URI不带主机地址部份,例如:
http://www.php.cn/abc.php?username=php 上面是一个URL(统一资源定位符),而URI是不带主机和(http://)
运行逻辑运算时如果中间为一个&时后面的即使当前面为FALSE也会执行,但是当为两个&&时后面的将不会被执行
*位运算
来源: http://www.php.cn/code/1062.html
举例 | 说明 | 详细说明 |
---|---|---|
$a & $b | And(按位与) | 将把 $a 和 $b 中都为 1 的位设为 1。 |
$a | $b | Or(按位或) |
$a ^ $b | Xor(按位异或) | 将把 $a 和 $b 中一个为 1 另一个为 0 的位设为 1。 |
~ $a | Not(按位取反) | 将 $a 中为 0 的位设为 1,反之亦然。 |
$a << $b | 左移 | 将 $a 中的位向左移动 $b 次(每一次移动都表示“乘以 2”)。 |
$a >> $b | 右移 | 将 $a 中的位向右移动 $b 次(每一次移动都表示“除以 2”)。 |
符号 | 说明 |
---|---|
$x? 真代码段:假代码段 | 判断是否为真假 ? 真情况 : 假情况; |
``(反引号) | 反引号中间插代命令,执行系统命令,等价于shell_exec函数 |
@ | 单行抑制错误,把这一行的错误不让它显示出来了,效率低不建议使用 |
=> | 数组下标访问符 |
-> | 对象访问符 |
instanceof | 判断某个对象是否来自某个类,如果是的返回true,如果不是返回false |
$x? 真代码段(只能写一句代码):假代码段(只能写一句代码);