博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP基础
阅读量:4954 次
发布时间:2019-06-12

本文共 8401 字,大约阅读时间需要 28 分钟。

                  初识    PHP

     php是一种运行在服务端的跨平台的脚本语言。

     PHP 文件可包含文本、HTML、JavaScript代码和 PHP 代码

   PHP脚本以<?php 开始,以?>结束

     php也支持<? ?> 不过要修改php.ini文件中short_open_tag = Off 改成short_open_tag = On

一、 输出语句

1、echo

echo可以输出一个或者多个字符串,逗号隔开

 

使用的时候可以不用加括号,也可以加上括号: echo 或 echo()。

 2、print输出

print只能输出一个字符串,成功输出则返回1。

可以使用括号,也可以不使用括号: print 或 print()。

3、print_r()

可以把字符串和数字简单地打印出来,只能输出一个字符串,而数组则以括起来的键和值得列表形式显示,并以Array开头

4、var_dump()

判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型。此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

var_dump返回表达式的类型与值而print_r仅返回结果,相比调试代码使用var_dump更便于阅读。

二、注释

1、单行注释://  这是PHP单行注释

2、多行注释:/* 这是PHP多行注释 */

三、数据类型

1、数据类型的获取与判断

  a、获取类型gettype()

  b、判断类型is_类型名()

2、String(字符串)

  a、任何文本放在单引号和双引号中

  b、"hello world"    或者  "hello PHP"

3、Integer(整型)

  a、整数必须至少有一个数字

  b、整数不能包含逗号或者空格

  c、整数可以是正数或者负数

4、Float(浮点型)

  a、带小数部分的数字

5、Boolean(布尔型)

  a、true/false

  b、通常用于判断

6、Array(数组)

  a、数组可以在一个变量中存储多个值

  b、array('volvo','bmw','toyota')

7、Object(对象)

  a、对象必须声明

  b、使用class关键字声明类对象

  c、类是包含属性和方法的结构

color = $color; } function what_color() { return $this->color; }}?>

 

8、Null(空值)

  a、Null表示变量没有值

  b、Null是数据类型为Null的值

9、对类型转换的四种方式

  a、对变量的重写:

  b、intval()  floatval()  strval()

< ?php  $str="123.9abc";  $int=intval($str);     //转换后数值:123  $float=floatval($str); //转换后数值:123.9  $str=strval($float);   //转换后字符串:"123.9"   ?>

  c、(数据类型)变量

(int)  (bool)  (float)  (string)  (array) (object)< ?php  $num1=3.14;  $num2=(int)$num1;  var_dump($num1); //输出float(3.14)  var_dump($num2); //输出int(3)  ?>

  d、类型转换settype(变量名,类型)

";var_dump($num); //输出int(12)?>

四、字符段处理

1、去除空格

  a、trim(string) 去除字符串两边空格

  b、ltrim(sring,'特殊字符') 去除字符串左边空格和特殊字符(特殊字符是可选参数)

  c、rtrim(sring,'特殊字符') 去除字符串右边空格和特殊字符(特殊字符是可选参数)

 例如: 

$str="(:@_@ hello world! @_@:)";$a=ltrim($str);//去掉左边空格$aa=ltrim($str,"(:@_@ ");//去掉左边空格和左边的特殊字符(:@——@$b=rtrim($str);//去掉右边空格$bb=rtrim($str," @_@:)");//去掉右边空格和特殊字符@_@:)$cc=ltrim($str,"(:@_@ hell");//去掉左边的(:@——@和hellecho $str."
".$a."
".$aa."
".$b."
".$bb."
".$cc;

2、字符串截取

  a、substr(字符串名,截取开始位置,截取长度)

$str="百度一下";$aa=substr($str,1,2);echo $aa;

3、字符串分割

    explode()    返回值存到数组中,即返回数组

$str="hello|world|i|am|com";$aa=explode("|",$str);//以“|”为分割界限,对字符串进行分割var_dump($aa);//查看一下是不是数组echo $aa[2];//返回数组的索引2;

3、字符串合成

    implode() 又名join()            返回字符串

$str="hello|world|i|am|com";$aa=explode("|",$str);var_dump($aa);echo $aa[2];$bb=implode("@",$aa);//将上边得到的数组$aa,合成得到一个字符串类型的变量$bb,并用“@”把原来数组每一项隔开,组成新字符串var_dump($bb);echo $bb;

4、字符串替换

    str_replace(替换前的字符,替换后字符,字符串名)

$str="hello world";$aa=str_replace("hell","1234",$str);echo $aa;

5、检索字符串中子串出现的次数

    substr_count(字符串名,'查找的字符串')

$str="aaaabbbbbbbbbbbbbbaaaacccccccccccaaaaffffffffffaaaarrrrrrrrr";$aa=substr_count($str,"aaaa");echo $aa;//输出4

 6、大小写转换

    strtoupper()函数--将字符串转换为大写                 strtolower()函数--将字符串转换为小写

$str="Hello World!";$str1=strtoupper($str);$str2=strtolower($str);echo $str1."
".$str2;

7、获取字符串长度

    strlen()        

$str="Hello World!";echo strlen($str);//输出12

8、定位查找

     strops(字符串名,要查找的字符)函数--查找字符第一出线的索引

$str="aaaabbaaaaaaaaaaaaaaaaaaabbaaaaaaaa";$str1=strpos($str,"b");echo $str1;//输出4

9、货币数据字符的格式化输出

    number_format()函数--把数字以货币的形式输出

$str="19846700";$str1=number_format($str);echo $str1;//输出19,846,700

10、日期时间的格式化输出     date()函数

 echo date("Y-m-d H-i-s");//输出2016-12-14 12-12-52

五、变量

1、变量

  $变量名=值

        变量名必须以字母或者下划线开始

        变量只能包含字母、数字和下划线

        变量名是区分大小写的       $y 和 $Y 是两个不同的变量

2、对变量的一系列判断

  a、isset():判断变量是否已存在  如果有值  返回true  否则返回false

  b、unset():把变量删除(释放)掉

  c、empty():判断变量是否为空

  d、is_null:判断变量是否为NULL

  e、具体判断表:                 

    变量 empty is_null isset

    $a=”” true false true
    $a=null true true false
    var $a true true false
    $a=array() true false true
    $a=false true false true
    $a=15 false false true
    $a=1 false false true
    $a=0 true false true
    $a=”0” true false true
    $a=”true” false false true
    $a=”false” false false true

3、可变变量

  一个可变变量获取了一个普通变量的值作为这个可变变量的变量名

六、运算符

1、算数运算符 

       运算符     + - * /              复合赋值运算符:+= -= *= /= %= .=

数字型与字符型的数字 是可以用算术运算符运算的  结果的类型是数字型

2、自增与自减

  ++                         --

对运算数进行递增操作          对运算数进行递减操作

在运算数之前,先递增或递减,再赋值:

$i = 1;$a = i++;  //$a = 1;  此时i为2,但赋给a的是1

在运算数之后,先赋值,再递增或递减

$i = 1;$a = ++i;  //$a = 2; 先执行i加1 再赋值给a

3、关系运算符

1、大小关系检测

  > >= < <=:满足返回true,不满足返回false

2、等值关系检测

 == != <>(不等) :判断返回值是否相等或者不等

 === !==:判断返回值及返回类型是否相等或者不等

$aa = 10;$bb = "10";alert($aa === $bb);

3、逻辑运算符

与:and   如果 x 和 y 都为 true,则返回 true

或 or  如果 x 和 y 至少有一个为 true,则返回 true

异或  xor     如果 x 和 y 有且仅有一个为 true,则返回 true

与     &&     如果 x 和 y 都为 true,则返回 true

或  ||  如果 x 和 y 至少有一个为 true,则返回 true

非  !  如果 x 不为 true,则返回 true

4、三元运算符

表达式 ? expr1: expr3 在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3。

$max = a>b?a:b;

5、数组运算符

x + y  :集合   x 和 y 的集合

x == y   :相等    如果 x 和 y 具有相同的键/值对,则返回 true

x === y  恒等     如果 x 和 y 具有相同的键/值对,且顺序相同类型相同,则返回 true 

x != y  不相等    如果 x 不等于 y,则返回 true

x <> y  不相等    如果 x 不等于 y,则返回 true

x !== y  不恒等    如果 x 不等于 y,则返回 true

七、字符串处理函数

1、去除空格

trim(string) 去除字符串两边空格

ltrim(sring,'特殊字符') 去除字符串左边空格和特殊字符(特殊字符是可选参数)

rtrim(sring,'特殊字符') 去除字符串右边空格和特殊字符(特殊字符是可选参数)

$str="(:@_@ hello world! @_@:)";$a=ltrim($str);//去掉左边空格$aa=ltrim($str,"(:@_@ ");//去掉左边空格和左边的特殊字符(:@——@$b=rtrim($str);//去掉右边空格$bb=rtrim($str," @_@:)");//去掉右边空格和特殊字符@_@:)$cc=ltrim($str,"(:@_@ hell");//去掉左边的(:@——@和hellecho $str."
".$a."
".$aa."
".$b."
".$bb."
".$cc;

2、字符串截取

substr(字符串名,截取开始位置,截取长度)

$str="百度一下";$aa=substr($str,1,2);echo $aa;

3、字符串分割

explode()      返回值存到数组中,即返回数组

$str="hello|world|i|am|com";$aa=explode("|",$str);//以“|”为分割界限,对字符串进行分割var_dump($aa);//查看一下是不是数组echo $aa[2];//返回数组的索引2;

4、字符串合成

implode() 又名join()            返回字符串

$str="hello|world|i|am|com";$aa=explode("|",$str);var_dump($aa);echo $aa[2];$bb=implode("@",$aa);//将上边得到的数组$aa,合成得到一个字符串类型的变量$bb,并用“@”把原来数组每一项隔开,组成新字符串var_dump($bb);echo $bb;

 

5、字符串替换

str_replace(替换前的字符,替换后字符,字符串名)

$str="hello world";$aa=str_replace("hell","1234",$str);echo $aa;

6、检索字符串中子串出现的次数

substr_count(字符串名,'查找的字符串')

$str="aaaabbbbbbbbbbbbbbaaaacccccccccccaaaaffffffffffaaaarrrrrrrrr";$aa=substr_count($str,"aaaa");echo $aa;//输出4

7、大小写转换

strtoupper()函数--将字符串转换为大写            strtolower()函数--将字符串转换为小写

$str="Hello World!";$str1=strtoupper($str);$str2=strtolower($str);echo $str1."
".$str2;

8、获取字符串长度

strlen()          

$str="Hello World!";echo strlen($str);//输出12

9、定位查找

strops(字符串名,要查找的字符)函数--查找字符第一出线的索引

$str="aaaabbaaaaaaaaaaaaaaaaaaabbaaaaaaaa";$str1=strpos($str,"b");echo $str1;//输出4

10、货币数据字符的格式化输出

number_format()函数--把数字以货币的形式输出

$str="19846700";$str1=number_format($str);echo $str1;//输出19,846,700

11、日期时间的格式化输出     date()函数

echo date("Y-m-d H-i-s");//输出2016-12-14 12-12-52

八、数组

1、数组是一个能在单个变量中存储多个值的特殊变量,并且可以根据键访问其中的值

2、数组分类

a、索引数组:用数字作为键名的数组一般叫做索引数组

$cars=array("Volvo","BMW","Toyota");echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";

b、关联数组:用字符串表示键的数组就是关联数组

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");echo "Peter is " . $age['Peter'] . " years old.";

c、多维数组:包含一个或者多个数组的数组

3、数组定义方式

a、$array = array(); 空数组

b、$array = array(1,2,3,4,5); 索引数组

c、$array = array(1=>"aa","bb"=>2); 关联数组

4、取值

      $array[0]               $array["bb"]

5、遍历数组

  遍历方式:

for循环    只能遍历索引数组

foreach    遍历索引      foreach($array as $value)

        遍历关联    foreach ($array1 as $key => $value)

each( )    返回数组中当前的键/值对并将数组指针向前移动一步

$attr = array('name'=>'zhangsan','age'=>20);var_dump(each($attr));//each($attr)[1]  each($attr)[0]var_dump(each($attr));//each($attr)[1]  each($attr)[0]

list( )    从数组中取值赋给一组变量

$attr = array(1,2,3);list($a,$b,$c)=$attr; //将右侧数组里面的元素赋值给参数列表里面的变量 echo $a,$b,$c;

each( )和list( )结合

$attr1 = array("one"=>1,"two"=>2,"3"=>3);//$attr1 = array(1,2,3);    while(list($k,$v) = each($attr1))     {         /*echo "{$k}--{$v}
"; */ echo $k.'--'.$v; }

使用指针

current()   取得目前指针位置的内容资料

key()    取得目前指针位置的索引值

prev()    将数组的内部指针倒回一位

next()    将数组中的内部指针向前移动一位

end()    将数组的内部指针指向最后一个单元

reset()    将数组的内部指针指向第一个单元

$attr1 = array("one"=>1,"two"=>2,"3"=>3)echo current($attr1); //取指针指向的当前元素的value值echo key($attr1); //取指针指向的当前元素的keynext($attr1); //将指针向下调一个prev($attr1); //将指针向上调一个end($attr1); //将指针调向最后一个元素reset($attr1); //将指针复位

九、php中单引号、双引号、花括号

单引号,单引号中的内容会被直接当成一个字符串,单引号中无法输出变量值

$a = 'abcd';echo '$a';    // 输出结果就是 $a,而不是 abcd

双引号,双引号中可以输出简单变量,不能输出复杂变量,否则会报错

$a = 'abcd';$b = array('aaa' => 'abcd');echo "$a";    // 输出 abcd,因为双引号中可以解析简单变量echo "$b['aaa']";    // 直接报错,因为双引号中不能解析复杂变量

花括号,花括号中既可以输出简单变量,也可以输出复杂变量,如数组、对象等;

$a = 'abcd';$b = array('aaa' => 'abcd', 'bbb' => array(12,34));echo "{$a}";    // 输出 abcdecho "{$b['aaa']}";    // 输出 abcdecho "{$b['bbb'][1]}";    // 输出 34

 

转载于:https://www.cnblogs.com/zhengleilei/p/9163695.html

你可能感兴趣的文章
querySelector与getElementBy等的区别
查看>>
X86段机制
查看>>
LeetCode:Remove Duplicates from Sorted List
查看>>
刷新加载1
查看>>
ROC-RK3308-CC开发实例总结——HZ711 压力传感器的使用方法
查看>>
MySQL数据备份之mysqldump使用(转)
查看>>
View转化为bitmap
查看>>
关闭Android应用程序[学习笔记一]
查看>>
新手学appium-appium错误截图
查看>>
amchart使用柱状图配置
查看>>
前端时间戳和时间转换
查看>>
二分图——最大不可互相到达数 = 最小路径覆盖数
查看>>
C#中抽象类和接口的区别(二)
查看>>
一、线性结构
查看>>
[SPOJ2021] Moving Pebbles
查看>>
Log4Net不同日志类型写入到不同文件
查看>>
VR AR MR的未来
查看>>
Python 编辑器内容
查看>>
软件设计不同时期的关注点分离(2010-04-26)
查看>>
Entity Framework 基于方法的查询语法
查看>>