php基础知识

一.PHP

1.PHP是什么:

  • PHP 代表 : Hypertext Preprocessor
  • PHP 文件可包含文本、HTML、JavaScript代码和 PHP 代码
  • PHP 代码在服务器上执行,结果以纯 HTML 形式返回给浏览器
  • PHP 文件的默认文件扩展名是 ".php"
  • 最常用的动态web开发语言  动态网站开发

2.PHP能干什么:PHP 可以生成动态页面内容

  • PHP 可以创建、打开、读取、写入、关闭服务器上的文件
  • PHP 可以收集表单数据
  • PHP 可以发送和接收 cookies
  • PHP 可以添加、删除、修改您的数据库中的数据
  • PHP 可以限制用户访问您的网站上的一些页面
  • PHP 可以加密数据

二.PHP基本语法

  • PHP 脚本可以放在文档中的任何位置
  • PHP 脚本以 <?php 开始,以 ?> 结束
  • PHP 中的每个代码行都必须以分号结束
  • 两种在浏览器输出文本的基础指令:echo 和 print(echo -可以输出一个或多个字符串,print -只允许输出一个字符串,返回值总为 1     区别: echo 输出的速度比 print 快, echo 没有返回值,print有返回值1     联系:echo 和 print 都是一个语言结构,使用的时候可以不用加括号,也可以加上括号: echo 或 echo() print或 print()    )

三.PHP变量

1.变量名:

  • 变量以 $ 符号开始,后面跟着变量的名称
  • PHP 没有声明变量的命令
  • 变量在第一次赋值给它的时候被创建
  • PHP 会根据变量的值,自动把变量转换为正确的数据类型
  • PHP 是一门弱类型语言,在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称
  • 变量名称组成部分包含字母数字字符和下划线(a-z   A-Z   0-9 以及   _   )
  • 变量名称必须以字母或下划线开头,不能以数字开头
  • 变量名称对大小写敏感($y 与 $Y 是两个不同的变量)

2.变量类型:

String(字符串):可以将任何文本放在单引号和双引号中

Integer(整型):整数是一个没有小数的数字

整数规则:整数必须至少有一个数字 (0-9)     整数不能包含逗号或空格    整数是没有小数点的    整数可以是正数或负数    整型可以用三种格式来指定:十进制, 十六进制( 以 0x 为前缀)或八进制(前缀为 0)

 Float(浮点型):浮点数是带小数部分的数字,或是指数形式

Boolean(布尔型):布尔型可以是 TRUE 或 FALSE

Array(数组):数组可以在一个变量中存储多个值

Object(对象):对象数据类型也可以用于存储数据 , 在 PHP 中,对象必须声明 , 首先,必须使用class关键字声明类对象 , 类是可以包含属性和方法的结构 , 然后我们在类中定义数据类型,最后在实例化的类中使用数据类型   

NULL(空值):NULL 值表示变量没有值 , NULL 是数据类型为 NULL 的值 , NULL 值指明一个变量是否为空值 ,  同样可用于数据空值和NULL值的区别 , 可以通过设置变量值为NULL 来清空变量数据

Resource(资源 ):资源是PHP内的几个函数所需要的特殊数据类型,由编程人员来分配

四.PHP运算符

1.数学运算符:加(+)、减(-)、乘(*)、除(/)、取余(%)、++(分为前加加和后加加 )、- -(分为前减减和后减减  )
2.PHP 比较运算符:
运算符名称描述实例
x == y 等于 如果 x 等于 y,则返回 true 5==8 返回 false
x === y 绝对等于(恒等于) 如果 x 等于 y,且它们类型相同,则返回 true 5==="5" 返回 false
x != y 不等于 如果 x 不等于 y,则返回 true 5!=8 返回 true
x <> y 不等于 如果 x 不等于 y,则返回 true 5<>8 返回 true
x !== y 绝对不等于(恒不等于) 如果 x 不等于 y,或它们类型不相同,则返回 true 5!=="5" 返回 true
x > y 大于 如果 x 大于 y,则返回 true 5>8 返回 false
x < y 小于 如果 x 小于 y,则返回 true 5<8 返回 true
x >= y 大于等于 如果 x 大于或者等于 y,则返回 true 5>=8 返回 false
x <= y 小于等于 如果 x 小于或者等于 y,则返回 true 5<=8 返回 true

3.三元运算符:(简单的分支结构的缩写)

语法格式:表达式1 ? 表达式2 : 表达式3

运算:如表达式1成立,那么执行表达式2,否则执行表达式3

4.逻辑运算符:

与 &&   左边的条件与右边的条件同时成立(两边结果都为true)

或 ||     左边的条件或者右边的条件只要有一个满足即可

非 !     对已有条件进行取反,本身为true,取反结果就是 false

5.字符串运算符: "  .   "

五.PHP三大控制结构
顺序:不加控制的流程,按照顺序执行编写的代码
 
选择:让程序有选择性的执行代码    分支控制有三种:单支,双支,多支   

IF语句

if(条件) { 条件为真时,执行的语句} else {条件为假时,执行的语句}

三种形态:

if( 条件 ){ 真,语句 } else { 假, 语句}

if ( 条件 ){ 真, 语句}

if ( 条件 ){ 真, 语句} elseif( 条件 ){ 二条件为真,语句}.....else{ 假,语句};....表示可以多次elseif。

SWITCH语句

switch( 条件 ) {

case 1条件:

语句; break;

case 2条件:

语句; break;

....

default: (这个可以缺省)

默认语句;

}

 

循环:让代码循环执行

WHILE语句: while(条件){ 条件为真,执行里面的语句; 条件为假,退出循环 }

DO...WHILE语句:do{ 第一次直接执行循环体,第二次开始,根据条件为真执行,为假退出循环} while(条件)

FOR语句:for( 初始值; 条件; 改变条件的语句) { 循环体中的语句}. 如 for($i=0; $i<8; $i++ ) { echo $i ;}

退出循环体的语句

continue,break;exit 区别:

continue 跳过当前循环,循环还在继续

break 跳出当前循环,循环终止

exit; 终止当前脚本,这行代码后边的代码不执行了

六.PHP字符串

1.字符串:是字符序列,比如 "Hello world!"     字符串可以是引号内的任何文本    可以使用单引号或双引号

2.字符串函数:
长度:strlen() 函数:返回字符串的长度,以字符计(strlen() 常用于循环和其他函数,在确定字符串何时结束很重要时   eg:在循环中,我们也许需要在字符串的最后一个字符之后停止循环)
 

字符串查找:

  • strpos() 函数:用于检索字符串内指定的字符或文本     如果找到匹配,则会返回首个匹配的字符位置       如果未找到匹配,则将返回 FALSE
  • strtolower($str):字母转小写
  • strtoupper($str):字母转大写
  • ucwords($str):每一个单词的首字母转大写
  • ucfirst($str):首字母转大写
  • str_replace('a','b',$str):b替换$str 中的a分大小写 ;
  • str_ireplace('a','b',$str):替换 不区分大小写
  • str_ireplace($search, $replace, $string):忽略大小写的去查找并替换

 

字符串大小写:

  • strtolower($string):返回小写之后的字符串
  • strtoupper($string):返回大写之后的字符串
  • ucwords($string):单词的首字母大写
  • ucfirst($string):字符串的单词的首字母大写
  • lcfirst($string):字符串的单词的首字母小写

 

字符串的截取:

  • substr($string, $start[, $length]):截取字符串
  • substr_replace($string, $replace, $start[, $length]):替换字符串的子串

 

字符ASCII:

  • ord($char):得到指定字符的ASCII
  • chr($ascii):根据ASCII得到指定的字符

 

加密

  • md5($string):计算字符串的md5的散列值,返回32位长度的字符串
  • sha1($string):计算字符串的sha1的散列值,返回40位长度的字符串

 

过滤

  • trim($string[, $charlist]):默认过滤字符串两端的空格,也可以过滤指定字符串
  • ltrim($string[, $charlist]):过滤字符串左端
  • rtrim|chop($string[, $charlist]):过滤字符串右端
  • strip_tags($string[, $allowTag]):过滤字符串中的HTML标记
  • addslashes($string):使用反斜线引用字符串中的特殊字符
  • htmlentities($string[, $flag=ENT_COMPAT]):将所有字符转换成HTML实体
  • htmlspecialchars($string[, $flag=ENT_COMPAT]):将字符串中的特殊字符转换成HTML实体
  • nl2br($string):将字符串中的\n用<br/>替换

 

比较

  • strcmp($string1, $string2):比较两个字符串的大小
  • strcasecmp($string1, $string2):忽略大小写的比较字符串的大小
  • strnatcasecmp($string1, $string2):使用自然顺序算法比较字符串
  • strncasecmp($string1, $string2, $len):比较字符串的开始的若干个字符

 

拆分/合并

  • explode($delimiter, $string):将指定字符串拆分成数组
  • implode|join($delimiter, $array):以指定分隔符将数组中的键值连接成字符串
  • str_split($string[, $split_length=1]):将字符串转换成数组

 

格式化字符串

  • printf($format[, $args]):格式化输出字符串
  • sprintf($format[, $args]):格式化输出字符串

 

其它常用

  • strrev($string):反转字符串
  • str_shuffle($string):随机打乱字符串
  • str_repeat($string):重复字符串
  • str_getcsv($input[, $delimiter=','[, $enclosure=''[, $escape='\']]]):解析CSV字符串为一个数组
  • parse_str($str[, $arr]):将字符串解析成多个变量
posted @ 2020-03-22 01:19  是阿芸啊  阅读(203)  评论(0编辑  收藏  举报