Web开发快速入门基础篇(3)PHP基础

2019-10-19  本文已影响0人  清风闻仙醉

3.PHP基础

基本语法

php文件结尾后缀为.php
内容如下

<?php
// 此处写 PHP 代码

?>

注释
//注释,当前行注释
/**
*多行注释
**/

这两种是注释,注释一般是来相当于备注,你这段代码是干什么用的,这一块是什么意思。注释很重要,
一个是方便你们以后回头再看这段代码,知道是什么,改起来方便。另一个是团队协作中,让别人知道你这是什么意思,养成一个好的习惯,开发规范

变量

$x =5;
//$创建一个变量,名字叫做x,临时存数据,存的是数5

顺便一提开发规范,变量名字请用英文
如姓名,请用name,username,nickname
不要用xingming这种拼音
头像,你可以用headpic,avatar
不要用touxiang
不会你可以查单词,还能学几个新单词,学学英文,一个是规范,大家一看可以理解这个变量是存的什么。另一个是装逼,显得高大上。
包括变量名,函数名,文件名
请使用英文

php代码,每一行结尾加分号 ;

加减乘除操作

以及i++,代表在i,变量i基础上 增加1

if else判断switch

if($i > 10){
//i大于10,执行这里面代码
}
else{
//不大于10,执行这里代码
}

for while循环

for ($i=0; $i<=10; $i++) {
  echo "数字是:$i <br>";
} 

变量i初始值是0,如果i小于等于10,i++,就是加1,然后继续执行。就是echo输出。直到i一直加,加到i = 11,这个时候大于10了,不满足i <= 10 这个条件,退出循环

json处理

php处理json数据
decode解码,把json变成数组,php可以处理的数据
encode编码,把数据变成json,让前端可以处理

php函数

什么是函数function,函数就是一个写好的一个方法,比如你经常写求a+b等于几,写的多了是不是麻烦,你就写到一个函数里,函数接收参数,return返回一个值

function add($a,$b){
    return $a+$b;
}

函数名字add,输入两个变量a,b,return返回a+b

数组操作

数组存一些复杂的数据,比如存一个你得用户信息

[
  '用户名' => 'aa',
  '密码' => 'bb'
  //。。。等等
]
$arr = array(); //创建php数组
/*
*php数组三种形式,索引,关联,多维数组
*/
//索引
$arr = array("aaa","bbb","ccc");

$arr[0] = "aaa";
$arr[1] = "bbb";

$arr = array(
    "0" => "aaa"
);

//数组取值 $arr[0]

//关联
$arr = array(
    "name" => "aaa",
    "sex" => "boy"
);

foreach ($arr as $key => $value) {
    //$key 每个键值对的key
}

for ($i=0; $i < count($arr); $i++) {
    //$arr[$i]
}

//多维数组
$arr = array(
    "aaa" => array("a1","a2"),
    "bbb" => array("b1","b2"),
);

$arr[0] = array("a1","a2");

字符串操作

有时候经常处理一些字符串,如从一个字符串取出来特定数据,或者分割字符串

explode(delimiter, string) //字符串 根据分隔符变数组
implode(glue, pieces)//数组 加分隔符 变字符串
htmlspecialchars()// html转义
trim(str)//移除字符串两侧空格
md5()//md5
str_replace(search, replace, subject) //字符串替换
strlen()//字符串长度
strpos()//字符串第一次出现位置
strtolower()//把字符串转换为小写字母。
substr()//返回字符串的一部分。

接收请求

请求就是发消息,核心就是
请求地址发给谁,就是后端的php地址

请求方式怎么发,请求有多种形式,get,post,put等,常见形式get、post必须掌握

请求参数发的什么内容

1.get请求,通过url参数传递数据,简单点说,就是通过网址url,http://域名.com/index.php?name=abc&id=123
一般来说get请求被用来获取数据,请求简单的查询参数,比如查询name为abc的某个数据,同时id=123,查询id是123的数据

因为是通过地址传递,也是看得见的,不会用来发送密码这种敏感信息,以及上传文件之类较大数据,这俩种用post

问:
请求的哪个地址,域名.com/index.php
请求形式是啥,通过url传递参数,get
这里的参数是啥,是问号? 后面的name

2.post请求,是在http post传递,请求的内容不会显示在url地址中
一般来接收表单数据,比如用户填了一个表,注册信息,填了较多数据内容,姓名 年龄 性别等。或者文件上传

当php收到请求,怎么接收

$_GET 

$a = $_GET['name']
//接收get请求中参数name,并且存到变量a里面

$_POST

请求调试

很关键,新手经常遇到的问题,大多数可以通过请求调试发现问题
开发过程中怎么调试,看这个请求发出去没有,发的什么内容,返回的什么
通过抓包之类的操作可以获取到,如chrome浏览器的network,以及fiddler,wireshark等工具

Session,Cookie

Session
一般被用来标记用户身份,存储当前这个会话用户信息。简单说就是你打开一个网页,你朋友同时也打开了这个网页。你们都打开了这个网站,网站怎么知道谁是谁,所以要识别这个用户身份。
通常用户登录之后,Session保存user_id用户id,相当于用户身份证,后面这个用户的请求,后端可以通过Session拿到这个user_id的值,就知道是哪个用户操作的。
$_SESSION['user_id']

比如登陆成功后,你看中了个东西,添加到购物车,后端接到发来的添加购物车请求,从Session拿到user_id,然后保存 哪个用户的,他添加的什么商品。

现在前后端分离的项目,多用JWT方式,保存一个token来识别

Cookie
一般是用来保存一些用户数据,保存在用户电脑上,比如用户头像,用户个性签名,用户浏览记录这种

$_COOKIE["user"]

数据库MYSQL操作

这个php原生操作数据库,知道点,框架都得封装好了,原生写得少,数据库连接,以及增删改查处理

$conn = mysql_connect("localhost","root","123");
if(!$conn){
    die('error');
}
mysql_select_db("test",$conn); //选择数据库

/**插入**/
$sql = "INSERT INTO TEST (name,sex) VALUES ("aaa","boy")";
mysql_query($sql);

/**查询**/
$sql = "SELECT * FROM TEST WHERE name='aaa'";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
    //mysql_fetch_array()取得结果集每行数据
    //$row['name']
}

/**更新**/
$sql = "UPDATE TEST SET sex = '111' WHERE name='aaaa'";
$result = mysql_query($sql);

/**删除**/
$sql = "DELETE FROM TEST WHERE name='aaa'";
$result = mysql_query($sql);

mysql_close($conn);
上一篇下一篇

猜你喜欢

热点阅读