PHP基础语法

所有php代码都要写到<?php    ?>当中

 

 变量

> 变量以$开头 字母/数字/下划线 不能以数字开头,大小写敏感。

内容输出

- echo:输出简单数据类型,如字符串、数值

- print_r():

输出复杂数据类型,如数组 

如果给出的数组或者对象,按照一定格式显示键和元素

 例 Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )

- var_dump():

输出详细信息,如对象、数组 

打印变量的相关信息,可以打印多个变量,用”,”逗号隔开

 例 

 

 

 字符串拼接

- js中字符串拼接用+;php中字符串拼接用 .

 单引号与双引号

- 单引号中的变量会当作普通字符串处理

- 双引号中的变量会解析为变量值

运算符

- 与JavaScript基本类似

数据类型

- 字符串

- 整型

- 浮点型

- 布尔型

- 数组

- 对象

- NULL

标量数据类型:字符串型、整型、浮点型、布尔型

   复合数据类型:数组、对象

   特殊数据类型:资源、NULL

(1)整型

取值范围:-21亿~21亿

(2)浮点型  (可以包含整数)

取值范围:-1.7E-308~1.7E+308

由于浮点数不能转换成精确的二进制,所以有时在运输时会出现错误,例如:(0.7+0.1)*10==8 结果为false

(3)字符串型(在引号中,解析变量,需在变量后加上符合或者空格)

  1. 双引号“”

双引号内解析变量的值

  1. 单引号‘’

单引号内解析变量的名,直接在客户端显示$name

  1. 长字符串

$Str = <<<heredoc   “heredoc”的名字可以随意取,按照变量命名规则

 ……. 填写字符串内容

heredoc;   结尾“heredoc”必须另起一行,分号结束

(4)资源型

对第三方插件等的操作,如调用mysql数据库等,第三方的内容称之为资源

(5)布尔型

只有true或false两种类型值

(6)NULL (空型)

如果变量不存在,返回NULL,空型只有一个值,就是NULL

(7)数组(一组数的集合,通过索引查找元素)

 (8) 对象

 数组

1. 索引数组  (与js数组基本相同)

数组的下标是从0开始的正整数,这样的数组称为“索引数组”

$arr=array(10,20,30,40);

$arr[0]=10;

2.关联数组

数组的下标是字符串,这样的数组称为“关联数组”

$arr=array(“name”=>”Tabb”,”sex”=>”gender”,”age”=>”22”);

由于关联数组没有整数型下标,所以不适合使用for循环来遍历

3. 混合数组

数组下标既有整型,也有字符串,这样的数组称为“混合数组”

$arr = array("name" => "tabb", "age" => "20", "tom", 20);

echo $arr[0] 输出结果为“tom”;说明整型下标是从”tom”开始计算的

数组的创建:

1. 使用array()函数创建数组:

通过“=>”重载符号给数组元素指定下标

如果数组元素没有指定下标,其下标为,当前最大索引+1,示例:

$arr=array(20=>”tabb”,2=>”28”,20,”tom”) 其中”20”的索引为21,如果都是字符下标,那么没有指定下标的元素,索引从0开始

使用array创建数组:

$arr = array([$key=>]$value,[$key=>]$value,…);

2. 使用[ ]中括号创建数组

$arr[“key”]=$value

不像js,可以不用先声明一个空数组,如果指定的数组不存在,会自动创建数组

        [ ] 中括号内容为空时,创建数组

        $arr[ ]=30;

如果数组不存在,就会创建一个数组,并添加第一个元素

如果数组存在,添加数组的元素的下标,是数组中的最大整形下标+1

 多维数组:

js的二维数组和遍历 

 

 

 php的二维数组

 

 

 

使用[ ]中括号可以快速创建多维数组:

$arr[ ][ ][ ][ ]=10; 快速创建一个4维数组

数组相关函数:

1. print_r ( )

打印关于变量的易于理解的信息

如果给出的数组或者对象,按照一定格式显示键和元素

2. unset ( )

删除数组元素,删除的是数组元素的值,下标还存在

删除变量 

 例  unset($aa[0]); //里面选择的是对应下标,不一定是数字,也可能是自定下标

3. count ( )

计算数组中的单元数目或对象中的属性个数

echo count($aa);

4. foreach ( )  只能用于遍历数组

foreach( $arr as [$key=>]$value ){ } 如果是索引数组,[$key=>]这个内容可以不要

 $a = array('Tom','Mary','Peter','Jack');

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

  echo $key.','.$value."<br/>";

}//
0,Tom
1,Mary
2,Peter
3,Jack

foreach关于二维数组和详细应用看单独分类

 

json_encode()把数组或者对象转换成字符串

 

 

 二维数组变成字符串

     $abc=array();
     $abc["aaa"]=array("username"=>"111","chinese"=>"222");
      $abc["bbb"]=array("username"=>"111","chinese"=>"333");
       $abc["ccc"]=array("username"=>"111","chinese"=>"444");
        $abc["ddd"]=array("username"=>"111","chinese"=>"555");
     echo json_encode($abc);
//{"aaa":{"username":"111","chinese":"222"},"bbb":{"username":"111","chinese":"333"},"ccc":{"username":"111","chinese":"444"},"ddd":{"username":"111","chinese":"555"}}

 

 

预定义变量(表单处理)

php设置输出utf-8

header("Content-Type:text/html;charset=utf-8")

- $_GET

http://localhost/page.php?abc=1

url中这种?请求 一般是get请求

$f=$_GET["abc"];
echo "$f";  //1

一般获取了数据后 会进行一个判断

if($abc==1){
echo "得到数据”;
}else{
echo "参数错误"
}

 一般用get传参,都是数据比较少的,因为url长度有限

- $_POST

form标签 默认请求就是get请求,get请求会把表单数据作为url的参数

 post是根据表单的name属性来请求值

<form action="page.php" method="post">
<input type="text" value="用户名" name="username" class="input1"/>
<input type="password"  name="password" class="input2"/>
<input type="submit" value="提交"  name="submit" class="input3"/>
</form>

 

 <?php
      header("Content-Type:text/html;charset=utf-8");
       $uname=$_POST["username"];
       $pw=$_POST["password"];
       
        if($uname =="admin" &&$pw="123456"){
            echo "登录成功";
        }else{
            echo "登录失败";
        }
      ?>

 

http协议常用请求方式(增删改查)

get   用来从服务器获取数据(参数一般作为查询条件)

post   用来添加数据

put    用来修改数据

delete  用来删除数据

后端接口

接口的作用就是给前台提供一个数据信息

请求流程

如果数据在后台渲染,那后台提供的就是一整个页面。

如果在前台渲染,那后台提供的就是一个接口

如果是个php文件,Apache会交给php解析器

 

 

 前端和后端

前端工作

页面做好,用css调整布局,添加样式,用js添加动态效果。给后端内容留出空间

后端工作

把前端页面,用编程语言进行填充,把页面和数据库数据整合到一块中就可以放到服务器上提供服务

 分支循环

- if/switch

- while

- for

- foreach

 函数

 <?php
       $aa= f("a");
        echo "$aa";
        function f($abc){
            return $abc;
        }       
      ?>

 

php中也有函数预解析 可以先调用后声明

 php中函数名字不区分大小写

个人总结重点

变量$开头 大小写敏感  

echo 输出简单类型,字符串、数值等等  print_r()输出复杂类型 如数组   var_dump()输出详细信息 如对象,数组

字符串拼接用 .     混合数组 $arr=array("name"=>"rw","age"="18","tom",20);  $arr[0] 输出tom,整数型下标从tom开始计算

数组相关函数  unset()删除数组元素 count()计算数组中单元数目,foreach()遍历数组

foreach 遍历二维数组

 

 

posted @ 2020-05-28 23:15  Ren小白  阅读(214)  评论(0)    收藏  举报
levels of contents