欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

适合php初学者的php基础知识汇总

程序员文章站 2022-04-18 22:04:54
...
适合php初学者的一些基础知识,也可算是一些经验积累吧,有需要的朋友,可以参考下。

PHP基础

一、初识PHP PHP是与HTML混合使用的嵌入式语言。 1、PHP标记 默认标记 短标记 ?>,需在php.ini中将short_open_tag选项开启 短标记和其他标记不提倡使用

2、关键字不区分大小写,用户自定义的类名和函数名不区分大小写,变量名区分大小写

3、输出 boolean print(参数) 返回布尔值 void echo(参数) 无返回值echo的效率要高一点

二、数据类型 1、比较两个浮点数的通常方法是先移动若干小数位,然后转换为整型数据再进行比较。

2、双引号做分隔符的字符串支持变量名解析,单引号做分隔符的字符串不支持变量名解析。 $name="张三"; "$name"=>张三 || '$name'=>$name || "$name先生"=>空 || "{$name}先生"=>张三先生 || "${name}先生"=>张三先生

3、字符串定义的方式:单引号,双引号和heredoc(

4、对象类型必须显式的进行声明。类用关键字class定义,使用关键字new生成这个类的实例,使用->符号类访问类中的属性和方法 class car{public $cololr;function beep(){}}$mycar = new car; $mycar->color='red'; $mycar->beep();

5、PHP是一种弱语言类型,变量的类型会根据赋予的值自行确定,而且往往在变量声明的同时进行变量初值的赋值。

6、数据类型强制转换时,只须将需要的类型名写在变量前的括号内即可。

三、常量和变量

1、定义常量 define("常量名",表达式或值) 常量名建议全大写,但不是必需的 使用常量 直接使用定义的常量名,无须在常量名前加"$" 预定义常量:_FILE_当前PHP程序文件名 _LINE_当前PHP程序所在的行数(在哪指哪)

2、变量不需要显式的声明,在对变量赋初值时就对变量进行了声明。如果变量没有被设置初值,则其初值即为NULL。

3、变量的赋值:传值赋值和引用赋值。如$a=&$b; 即b原来指向了一个存储位置,引用赋值后,a也指向了这个存储位置,这时,a或b的销毁都不会对对方造成任何影响,但是如果其中一个的值改变了,则另一个也会作出相同的改变。

4、访问预定义变量之使用超全局变量,总共9个超全局变量

5、局部变量:在函数内定义的变量 只能在函数内使用 全局变量:在函数外定义的变量 默认只能在函数外使用 要想在函数内使用全局变量,需要在函数内将变量用global声明,或者使用超全局变量数组&GLOBALS["变量名"] 在PHP中,只有函数能提供局部作用域。 超全局变量$GLOBALS包含了全部的变量 静态变量的特点:只有在第一次被调用时进行初始化,函数结束后不销毁,并且下次使用时,该变量还保留原来的值。 静态变量只能在函数内定义和使用。 可变变量:将变量的名字也作为一个变量来使用。$a=b;$b=c;$$a=$b=c; 外部变量:使用GET方式能传递的数据最大为256字节,使用POST最大为2MB

四、流程控制(仅写与java等其他语言的不同) 1、交互格式(冒号语法) 不建议使用,经典的比较直观

2、foreach():该语法是专门为数组设计的 第一种格式foreach(target_array as $value) statement 第二种格式foreach(target_array as $key=>$value) statement

3、break 数字:要跳出的结构的层数 contiue 数字:要跳出的结构的层数

4、exit语句可以结束当前整个脚本的执行,通常用于错误检查。 exit; exit("错误原因"); die()是exit的别名 $conn=mysql_connect("localhost","root","") or die("无法连接到MySQL服务器");

五、数组 1、关联数组与数字索引数组唯一的区别在于索引的类型。

2、数字索引数组 初始化:直接为数组元素赋值array()函数 如果数组不存在,那么为数组元素赋值的同时即可创建该数组 如果数组元素是按顺序排列的数字,则在对数组进行初始化时,可以使用range()函数 range()有3个参数,第一个参数指定初始值,第二个参数指定终止值,第三个参数可选,用于指定步长

3、关联数组 初始化:直接为数组元素赋值array()函数

4、与数组相关的运算符 + 联合 $a+$b 将$附件到$a之后,但是任何索引值冲突的元素将不会被添加 == 等于 $a==$b 如果$a和$b包含相同元素,返回true(索引值和元素必须都相同) 除了顺序,其他必须完全一样 != 不等于 === 恒等 如果$a和$b包含相同顺序的相同元素,返回true(索引值和元素必须都相同) 必须完全一模一样 !== 不恒等

5、数组的排序 boolean sort() 按数字和字母顺序排列 排列后会赋予新的索引值,原有索引值被删除 void asort()按升序对数组进行排序 排列后保留原来的索引关系 integer ksort() 按索引值升序进行排列 usort(数组,方法名)按用户自定义方法进行排序 array_multisort() 一次对多个数组进行排序 natsort() 按自然顺序排序,排序后保留原有的索引关系 natcasesort() 自然排序,不区分大小写

6、数组的反向排序 rsort() 对数组元素按降序排列 arsort() krsort()

7、对数组进行重新排序 boolean shuffle() 对数组进行随机排列 array array_reverse() 将数组中的元素逆置 array array_flip() 将数组中的索引与其元素值兑换

8、数组的遍历 current() 获取数组中当前指针所指的元素值 next()将数组的指针向后移动一位,返回移动后指针所指向的元素的元素值 prev()将数组的指针向前移动一位,返回移动后指针所指向的元素的元素值 reset()指针设置回数组的起始位置 end() 将指针移动到数组的最后一个元素处 each()返回数组中当前指针所指向的“索引/元素值”对,并将数组指针向后移动一位 返回一个包含4个元素的数组,且该数组的索引分别为0,key,1,value key() 返回数组当前指针所指向的索引值 array_walk()以相同的方式对数组中的每一个元素进行处理 array_reduce() 将自定义函数依次应用于数组的每个元素 9、其他的数组操作函数 list()从一个数组中一次提取多个值,并同时赋值给多个变量 count()/sizeof()计算数组中元素的个数 1 2 3 4 下一页 尾页