网络请求通信过程扩展(了解)
客户端 : 浏览器(Chorme, firefox, Edge) B
服务器 : 提供服务的一台无端主机
IP: 用来在网络当中定位一台绝对的主机电脑.(IPV4,IPV6)
LAN: 局域网
POPT: 端口号(在一台主机中,定义应用程序使用)
域名: 是IP地址的一种关系映射,方便记忆
DNS: 域名解析服务(本地: /etc/hosts, 202.106.0.20)
TCP/IP: 传输控制协议,用来发起网络请求
- 连接有三次握手
- 断开连接有四次挥手
HTTP: 超文本传输协议
- 请求报文
- 请求行
- 请求头
- 空行
- 请求体(POST)
- 响应报文
- 响应行
- 响应头
- 空行
- 响应体(实际请求数据)
Apache: Web服务器软件 (Tomcat, python, Ngix ), 用来接收客户端的请求.
MySQL: 数据库服务器, 存储数据
0 .笔记说明
下载安装 typora 软件,直接打开笔记.否则打开之后排版是乱的.
Typora 是一个非常好用的 markdown编辑工具.
官方网站 :https://www.typora.io/#windows
1. PHP环境安装
1.1 标准安装
需要独立安装 apache, mysql, php解释器,还要配置很多相关的配置文件和选项.配置起来非常麻烦,学习阶段不建议使用.
1.2 集成环境
Phpstudy
官方网站: [https://www.xp.cn/](https://www.xp.cn/)使用说明: [https://www.php.cn/phpstudy-377909.html](https://www.php.cn/phpstudy-377909.html)
XAMPP
官方网站: https://www.apachefriends.org/zh_cn/index.html
下载地址: https://www.apachefriends.org/zh_cn/download.htmlXAMPP和本地MySQL冲突问题解决: [https://blog.csdn.net/sinat_37633633/article/details/77645463](https://blog.csdn.net/sinat_37633633/article/details/77645463)默认打开 /opt/lampp/htdocs/ 目录,编写保存 php 文件在浏览器中,通过 localhost:8080/php文件名进行访问 .
LAMP:
Linux 做为服务器的操作系统平台Apache 做为Web 服务器程序, 接收客户端 的请求MySQL: 做为数据服务器,用来保存数据,PHP: 做为后端数据处理程序来处理数据.
全免费.
静态数据
在网站中提供一些不会发生变化的数据,称为静态数据.text, html. css, js,image, font
动态数据
服务器提供给客户端的数据需要服务进行处理,然后发给客户端 的数据.
BS架构
Browser/Server 浏览器/服务器架构
CS架构
Client/Server 客户端 /服务器架构
2. 什么PHP
PHP(Hypertext Preprocessor,超文本预处理器)是运行在服务器端的一种通用开源脚本语言,目前主要用于 Web 网站开发。
3. 平台编辑保存代码
每次在平台上编写完代码 后,需 要进行 ctrl + s 保存代码 .
4. PHP标记
默认标记
php代码;?>
简单写法
通过“”标记分隔 PHP 代码,也就是去掉了默认写法中的“php”关键字。
在一个 php 文件中,可以出现多个 php 标记.
**PHP标记符使用特点:
1、标记符,可以出现在页面任意位置。
2、标记符,在同一页面可以出现多次。
3、标记符,不能嵌套。
4、标记符当中,只能出现 php 代码。
5、标记符中的所有代码,都运行在服务器端。**
5. 变量
PHP定义变量语法格式:
$变量名;或$变量名 = 值;
PHP变量命名规则:
1、PHP 变量的定义,由前缀符号 $ 和 变量名 两部分组成。
2、变量名由字母、数字、下划线组成,第一个字符不能是数字。
3、不能把 PHP 关键字和保留字作为变量名。
4、变量名对大小写敏感。
6.注释
单行注释
// 这是一个单行注释// 每一行单行注释前都要以双杠开始// 注释是 双杠和注释内容之间要有一个空格// 编辑器中的注释快捷键 , ctrl + /
多行注释
```php /* 这是PHP 中的多行注释内容, 多行注释都可以写在这里,注释内容之前不需要有其它标记但是,不能嵌套
*/
/*
- 这是PHP 中的多行注释内容,
- 多行注释都可以写在这里,注释内容之前不需要有其它标记
- 但是,不能嵌套 / ```
7. 数据类型
PHP 的数据类型,可以分为:标量数据类型、复合数据类型、特殊数据类型。
<?php// 十进制数据$ten = 200;echo $ten;echo "<br>";// 二进制数// binary$er = 0b1111;echo $er;echo "<br>";// 八进制数$ba = 0777;echo $ba;echo "<br>";// 十六进制数// 0~9, a~f$ox = 0xff;echo $ox;echo "<br>";// $num = 10;// $num = 0b10;// $num = 010;$num = 0x10;// 十进制10 -> 10;// 二进制10 -> 2;// 八进制10 -> 8;// 十六进制10 -> 16;echo $num;?>
字符串类型引号的区别
双引号包含的内容,如果有变量会被 解析,如果有转义字符,也会进行转义显示.
单引号中的内容 ,所见即所得,无论是 变量,还是转义字符,都会原样输出,不会进行替换 .$num = 0x10;// 双引号会解析变量,用值替换变量进行显示echo "这是一个PHP中的整数变量: $num";echo "<br>";// 单引号不会解析变量,所见即所得echo '这是一个PHP中的整数变量: $num';$a = 2;$ab = 3;echo "<br>";echo "$a";echo "<br>";echo "{$ab} d af asf "; // 2b
8. 转义字符
// 转义字符的使用// $str = "a\tb\tc\td";// $str = "\\t 是一个转义符号,用来表示 tab键";// $str = "PHP是世界上\"最好\"的编程语言!";// $str = 'PHP是世界上\"最好\"的编程语言!';$str = 'PHP是世界上"最好"的编程语言!';echo $str;
输出语句,用于将数据显示到浏览器。PHP常用输出语句,包括:echo、print、print_r、var_dump四种。

9.输出语句介绍
1、echo
介绍
用于输出一个或多个字符串信息
使用方法
$city = “北京”;
echo $city; //输出结果:北京
echo “
PHP很有趣!
“; //输出结果:PHP很有趣!
echo “我住在{$city}”; //输出结果:我住在北京
echo “这是一个”,”完整的”,”字符串”; //输出结果:这是一个完整的字符串
2、print
介绍
用于输出一个字符串信息
使用方法
$city = “北京”;
print $city; //输出结果:北京
print “
print输出语句
“; //输出结果:print输出语句
print “我住在{$city}”; //输出结果:我住在北京
3、print_r
介绍
用于打印变量,以更容易理解的形式展示
使用方法
$cityList = array(“北京”,”上海”,”天津”);
print_r($cityList); //输出结果:Array ( [0] => 北京 [1] => 上海 [2] => 天津 )
4、var_dump
介绍
用于输出变量的相关信息
使用方法
$city = “北京”;
$year = 2020;
var_dump($city); //输出结果:string(6) “北京”
var_dump($year); //输出结果:int(2020)
常量是指值不会发生变化的量。它具有全局性,能在整个脚本中贯穿使用。如果常量值被定义,则该值在脚本执行期间都不能改变或取消定义。
10.变量
自定义常量语法格式:define(key,value);<!DOCTYPEhtml><html><head><title>自定义常量</title><metacharset="utf-8"/></head><body><?php//定义常量,常量名为PI,常量值为3.14define("PI",3.14);//输出常量PI的值echoPI;?></body></html>
代码讲解
1、定义常量
define(“PI”,3.14);
定义常量,常量名为 PI,常量值为 3.14。
2、使用常量
echo PI;
将常量 PI 的值,输出到浏览器页面。
魔术常量,是 PHP 的系统常量,也叫做预定义常量。常用魔术常量,如下表:
| 常量名 | 说明 |
|---|---|
| LINE | 返回当前代码的行号 |
| FILE | 返回当前文件的完整路径 |
| CLASS | 返回当前的类名 |
| METHOD | 返回当前的方法名 |
| FUNCTION | 返回当前的函数名 |
小提示:
小补充
心得:
按照语法就行
网络请求通信的必备图:
![VPK]E){YE)LVYXI7}B`O.png


