PHP知识整理二

PHP变量的定义

    存储在内存中的有名称的数据信息,其值在程序运行过程中会发生变化。

    声明变量:$变量名称 = 值;

    注意:

PHP数据类型

    支持8种数据类型

    1.标量数据类型:存储单一数据(信息)

        字符型:string

        布尔型:boolean,bool

        整型:Integar,存储十、八、十六进制的整数,可带符号,-2147483647到2147483647

        浮点型:float/double

    2.复合类型

        数组:Array

        对象:Object

    3.特殊类型

        空值:null

        资源:resource

    伪类型:混合类型mixed,数字number,回调callback

字符类型的声明:

    字符必须括在定界符范围内,其内容为任意的字符

    定界符:单引号,双引号,hereDoc(<<<)

    转义符:\n,\r,\t,\v,\\,\',\",\$

   $string = <<<str

           ....

           ....

    str;

    str:是一个标识符,结束标识符必须单独另起一行且位于行首(前面不能出现空格)

注意:单双引号的区别?

1.双引号中的变量能被解析,输出的是变量的实际赋值;单引号中的变量只是普通字符串原样输出

2.双引号中的变量名会有贪婪性,用{}包含来解决

3.单引号只支持\'和\\两个转义符,双引号支持所有

    \n,\r在windows中基本没什么区别,都可以当做回车换行符,

           而在linux中,\n表示换到下一行,却不会回到行首;\r表示光标回到行首,但仍在本行。

   

数组的声明:

    数组是一组数据的集合,每个数据称为一个元素,其包含索引(键名、下标)和键值两部分。

    元素的索引由数字或字母组成。

    索引数组:索引是纯数字

    关联数组:索引是字母或混合

    $arr =array(value1,value2);

    $arr =array("key1"=>value1,"key2"=>value2);

    $arr =array();

   $arr[key] = value;

    $arr[]= value;

注意:

1.如果数组中既有关联数组又有索引数组,那么索引数组从0开始编号。

2.如果数组中的索引数组的下标为正整数,那么第一次没有下标的成员的下标为该成员之前的最大下标加1

3.如果数组中的索引数组的下标为负数,那么第一次没有下标的成员的下标为0

4.相同下标的数组成员产生覆盖,不存在的下标成员产生添加

5.数组名称[]可以动态添加数组成员

null空值

   NULL,null

    1.没有赋任何值

    2.被赋值成null

    3.通过unset()函数处理过的变量

 

PHP数据类型转换

自动转换(隐式转换)

1.转成字符类型

    数字直接转成数字字符串;布尔true转成"1",false转成"0";null转成空字符串"";

    数组转成Array;资源转成Resource id#序列号

2.转换成布尔类型

    数字0或0.0,空字符串""、'','0'、"0",null,没有成员的数组,通过空标记创建的SimpleXML对象

    以上6种转成false;其余的转成true

3.转换成数值类型

    如果字符串为合法数字字符串且不包含(.)或(e、E),转换成整形,否则转成浮点型

    非法数字字符串转换成0;布尔true转成1,false转成0;null转换成0;

强制转换(显式转换)

(int)转成整型

(string)转成字符型

(boolean)转成布尔型

(float)转成浮点型

(array)转成数组

(object)转换成对象

(unset)转成NULL

永久转换

settype($str,$type)//返回值是布尔类型,成功为true,失败为false

 

数据类型的检测:

is_bool()

is_string()

is_float()

is_int()

is_null()

is_array()

is_object()

is_numeric()//检测变量是否为数字或数字组成的字符串

 

变量的声明以及使用:

1.直接赋值

$变量名 = 值;

2.变量间的赋值(间接赋值)

$变量名1 = 值;

$变量名2 = $变量名1;

3.引用赋值:用不同的变量名去访问同一个内容值。当改变其中一个变量的值时,另外的变量跟着改变。

$变量名1 = 值;

$变量名2 = &$变量名1;

 

作用域:

    局部变量:在函数内部定义的变量,其作用域在所在的函数内

    全局变量:被定义在所有函数外面的变量,其作用域是整个PHP文件,

        但在用户自定义的函数中可不可以使用,如果想使用就必须用关键字global进行声明。

    静态变量:能够在函数调用结束后仍然保留变量值,当再次回到其作用域时,继续使用原来的值。

    使用静态变量就必须要使用关键字static进行声明。

 

可变变量:变量的名称由另外一个变量的值来确定,实现原理就是在变量前面多加一个$

 

自定义变量:

预定义变量:所有预定义变量都是数组

    $_GET

    $_POST

   $_REQUEST

   $_FILES

   $_COOKIE

   $_SESSION

   $_SERVER

   $_GLOBALS

    $_ENV

   

PHP常量

   define(name,value,false|true)

    name:常量名(常规情况下,都为大写),名称前面没有$

    value:常量值 

           第三个参数:指定是否严格区分大小写,默认为false严格区分;

常量的获取:

    直接使用常量名获取值;

    使用constant()函数来获取

 

defined(“常量名”):用来检测一个常量是否已经定义,返回值是布尔类型

注意:常量在定义和使用时,无需美元符号$;常量名称一般为大写字母;常量的数据类型只能是标量类型

自定义常量:

预定义常量:

系统常量:

   PHP_VERSION

    PHP_OS

   E_ERROR

   E_WARNING

   E_NOTICE

    TRUE

    FALSE

    NULL

 

$_SERVER['HTTP_ACCEPT_LANGUAGE']//浏览器语言
$_SERVER['REMOTE_ADDR'] //当前用户 IP 。
$_SERVER['REMOTE_HOST'] //当前用户主机名
$_SERVER['REQUEST_URI'] //URL

$_SERVER['PHP_SELF']//正在执行脚本的文件名

$_SERVER['argv']//传递给该脚本的参数。

$_SERVER['QUERY_STRING'] //查询(query)的字符串。

魔术常量:

   __FILE__        返回当前文件的物理路径及名称

   __LINE__        返回行号

   __CLASS__       返回类名称

   __METHOD__      返回方法名

    __FUNCTION__   返回函数名

   

   

 

   

PHP运算符

算术运算符:+-*/%

比较运算符:<、>、<=、>=、==、===、!=、!==

逻辑运算符:&& and || or !

赋值运算符:=、+=、-=、/=、*=、%=

位运算符:&,|,^,~,<<,>>

三元运算符:?:

自增自减运算符:++、--

字符运算符:连接符(.)

错误抑制符:@

 

PHP语句

if语句:

switch语句:

while语句:

for语句

foreach语句

   foreach($arr as $key=>$value){

    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值