PHP基础简记ch.1
PHP标记
1.脚本标记
<script language="php">
echo 'hello world';
</script>
2.标准标记
<?php
echo 'hello world';
?>
PHP注释
- 行注释
//
、#
- 块注释
/* */
语句分隔符
PHP中,代码是以行为单位,系统需要通过判断行的结束,该结束通常都是一个符号:分号 ;
(英文状态下的)
变量
<?php
//定义变量
$var1;
$var2 = 1;//定义同时赋值
echo $var2;//通过var2变量名字找到储存内容1,然后输出
//删除变量,使用unset(变量名字)
unset($var2)
?>
预定义变量
提前定义的变量,储存许多需要用的数据(预定义变量都是数组)
- $_GET:获取所有表单以get方式提交的数据
- $_POST: POST提交的数据都会保存在此次
- $_REQUEST: GET和POST提交的都会保存
- $_SERVER: 服务器信息
- $_SESSION: session会话数据
可变变量
如果一个变量保存的值刚好是另一个变量的名字,则可以:
<?php
//可变变量
$a = 'b';
$b = 'bb';
echo $$a;
//输出结果为bb
?>
变量传值
将一个变量赋值给另一个变量
- 值传递
- 引用传递
<?php
$a = 1;
$b = $a; //值传递
$b = 2;
echo $a,$b; //输出结果1,2
$a = 1;
$b = &$a; //引用传递
$b = 2;
echo $a,$b; //输出结果2,2
?>
常量
常量一旦定义,通常数据不可改变
- 使用定义常量的函数
define( , )
- 5.3后才有的:const 常量名 = 值
<?php
define('PI',3.14) ;
const PII =3 ;
?>
常量不需要使用$
符号,一旦使用会被认为是变量
常量的名字组成由字母、数字和下划线组成,不能以数字开头
常量的名字通常以大写字母为主
define 和 const 定义的常亮有区别,在于权限的区别,如:
<?php
define('-_-','smile') ; //正确
const -_- ='smile' ; //错误
?>
如需访问常量,则需使用另外一个访问常量的函数:echo constant('常量名')
系统常量
系统常量: 系统帮助用户定义的常量,用户可以直接使用
常用的几个系统常量:
- PHP_VERSION
- PHP_INT_SIZE
- PHP_INT_MAX
在PHP中还有一些特殊的常量,他们由双下划线开始+常量名+双下划线结束,这种常量称之为系统魔术常量,魔术常量的值通常会跟着环境变化,但是用户改变不了,如:
__DIR__
:被执行脚本在电脑的绝对路径__FILE__
:被执行脚本在电脑的绝对路径(带文件名)__LINE__
:当前所属行数的绝对路径__NAMESPACE__
:当前所属命名空间__CLASS__
:当前所属类__METHOD__
:当前所属方法
数据类型
在PHP中得的是存储的数据本身的类型,而不是变量的类型,PHP是一种弱类型语言,本身并没有类型
PHP的八种数据类型
在PHP中将数据分为三大类八小类
- 基本数据类型
- 整型:int ,四个字节储存
- 浮点型:float/double ,八个字节储存
- 字符串型:string
- 布尔类型:bool
- 复合数据类型
- 对象:object ,存放对象
- 数组:array ,存储多个数据(一次性)
- 特殊数据类型
- 资源:resource ,存放资源数据
- 空类型:NULL
类型转换
需要指定数据类型,需要外部数据
- 自动转换:系统根据需求自己判定,效率偏低
- 强制转换:人为转换,在变量前加一个括号,在里面写入对应类型
在转换过程中,用的比较多的为转布尔类型和转数值类型,关于转布尔的说明:
字符串转数值的说明
- 布尔true为1, false为0
- 字符串转数值:
- 以字母开头的字符串永远为0
- 以数字开头的字符串,取到碰到字符串为止(不会出现多个小数点)
<?php
$a = 'abc1.1.1';
$b = '1.1.1abc'; //创建数据
echo $a + $b; //自动转换
//算数+运算,系统先转换成数值类型(整型和浮点型)
//结果为1.1
echo (float)$a,(foloat)$b;
//输出结果01.1
?>
数据类型判断
通过一组类型判断函数,来判断变量,最终返回这个变量所保存的数据类型(如果相同返回true):以is_开头后面跟类型名字的函数: is_xxx(变量名)
bool类型不能用echo来查看,可使用var_dump
结构来查看
还有一组函数可以来获取积极设定数据的类型 gettype(变量名):获取类型,得到的是该类型对应的字符串
settype(变量名,类型): 设定数据类型:与强制转换不同
- 强制转换是对数据值复制的内容进行处理
- settype会改变变量本身
整数类型进制
在PHP中提供了四种类型的定义方式:十进制、二进制、八进制、十六进制
$a=120; //十进制
$a=0b120; //二进制
$a=0120; //八进制
$a=0x120; //十六进制
整数类型进制转换
decbin()
:10转2decoct()
:10转8dechex()
:10转16bindec()
:2转10
浮点类型
整型超过自身存储的大小后会用浮点型存储
运算符
与其他语言几乎一致,补充一点‘全等于’:===
左边与右边相同(大小、数据类型)