一丶继续简单了解网络协议和http协议
1,网络协议有两种
OSI七层参考模型,TCP/IP四层应用模型,基本都是使用TCP/IP
2,TCP/IP协议的细分
1)应用层:http等
2)传输层:TCP,UDP等
3)网络层:IP等
4)接口层:各种无线通信网络接口
3,对IP协议的了解
1)在同一个网络IP地址唯一
2)IPv4使用32位地址,以点分十进制表示,如:127.0.0.1表示本机
192.168.x.x就类似于家庭wifi的地址
10.x.x.x是内部局域网,使用在学校公司中
其他:外部广域网
3)IPv6使用128位(16个字节)写成8个16位的无符号整数,之间用:隔开
例如:3ffe:3201:1401:1280:c8ff:fe4d:db39:1984
注:查看IP·可以在cmd中输入ipconfig(window)
4)IP有静态IP:IP和动态IP:IP DHCP
4,对TCP,PUD的了解
1)TCP有一个著名的三次握手:用户给服务端发出一个要发信息的意思,然后服务端给用户发出一个可以发的信息,最后用户表示我要发了之后才发。
2)UDP不建立连接,速度快,知道服务器的地址之后直接发送(没有TCP的三次握手的过程)
3)大部分使用TCP协议
5,对DNS的了解
DNS叫域名解析系统,计算机只能识别IP地址,而无法直接识别域名,所以DNS先把域名解析成IP地址,计算机再识别,域名只是为了方便人们的记忆
6,http请求
1)两种方式:
URL:?参数1=参数值&参数2=参数值(GET请求时使用)
reques body:在图中圈起来的地方请求(POST请求时使用)
注:参数都是以键值对的方式出现
多个参数用&隔开
二,PHP基本知识
1,基本语法
1)PHP 脚本可以放在文档中的任何位置。PHP 脚本以 <?php 开始,以 ?> 结束
2)PHP有两种在浏览器输出文本的基础指令:echo 和 print。
注意:echo 和 print 的区别:
echo - 可以输出一个或多个字符串
print - 只允许输出一个字符串,返回值总为1
提示: echo 输出的速度比 print 快, echo 没有返回值,print 有返回值 1
2,php变量
1)变量以 $ 符号开始,后面跟着变量的名称
2)变量名不能包含空格
3)变量名是区分大小写的($y 和 $Y 是两个不同的变量)
注:PHP 没有声明变量的命令(php是弱类型语言)
4)php四种变量作用域:local(局部),global(全局),static(静态,不被删除),parameter( 函数参数作用域)
注:在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字 或者使用
$ GLOBAL[index]数组:PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。
3,PHP定界符EOF的使用
1)为什么使用EOF:PHP是一个Web编程语言,在编程过程中难免会遇到用echo来输出大段的html和javascript脚本的情况,如果用传统的输出方法 ——按字符串输出的话,肯定要有大量的转义符来对字符串中的引号等特殊字符进行转义,以免出现语法错误。如果是一两处还可以容忍,但是要是一个完整的 html文本或者是一个100行的js我想是谁都会崩溃的。这就是PHP为什么要引入一个定界符的原因——至少一大部分原因是这样的。
2)使用概述:1,必须后接分号,否则编译通不过。2, EOF 可以用任意其它字符代替,只需保证结束标识与开始标识一致。3, 结束标识必须顶格独自占一行(即必须从行首开始,前后不能衔接任何空白和字符)。
<?php
echo <<<EOF
<h1>我的第一个标题</h1>
<p>我的第一个段落。</p>
EOF;
// 结束需要独立一行且前后不能空格
?>
4,PHP类型比较
==:只比较值,不比较类型
===:即比较值也比较类型