分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

PHP基础

发布时间:2023-09-06 01:59责任编辑:傅花花关键词:PHP

                  初识    PHP

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

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

   PHP脚本以<?php 开始,以?>结束
     php也支持<? ??> 不过要修改php.ini文件中short_open_tag = Off 改成short_open_tag = On

一、 输出语句

1、echo

<?php echo "welcome!"; ?>

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

<?php echo ‘youyi‘."最美"; ?>

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

<?php ??echo "欢迎同学们!"; ??echo "Welcome" . " to you!"; ??echo 1+2+3+4+5;?>

 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、类是包含属性和方法的结构

<?phpclass Car{ ?var $color; ?function __construct($color="green") { ???$this->color = $color; ?} ?function what_color() { ???return $this->color; ?}}?>

8、Null(空值)

  a、Null表示变量没有值

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

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

  a、对变量的重写:

<?php$aa = 11;$aa = ‘aa‘;echo gettype($aa);//string?>

  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(变量名,类型)

<?php$num=12.8;$flg=settype($num,"int");var_dump($flg); ?//输出bool(true)echo "<br/>";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."<br>".$a."<br>".$aa."<br>".$b."<br>".$bb."<br>".$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."<br><br>".$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."<br>".$a."<br>".$aa."<br>".$b."<br>".$bb."<br>".$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."<br><br>".$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}<br>"; */ ???????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

PHP基础

原文地址:https://www.cnblogs.com/zhengleilei/p/9163695.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved