由于工作中,做微信小程序需要我自己写一些后台代码。并且公司后台用的是php。所以我决定在周末和下班后抽空学习php。一开始,我想找一些入门视频来学,然后发现好像效率不是很好。不如看书来得痛快。(主要是没先看一下文档了解php,还有就是看视频真容易犯困QAQ)。于是乎,在网上搜索php入门书籍推荐。发现了这本《跟兄弟连学PHP》。稍微试读了一下。感觉不错。准备用它当敲门砖。
首先看了它的第一章。大概是讲一些学习PHP的预热知识。在第一章的小结中是如下要点:
- W3C标准
- 动态网页开发所需的web构件,以及每种构件在web开发中的用途。
- Web的工作原理,以及网站的运行过程。
- HTTP协议与web的关系
接下来,我试着写下我的一些理解:
1.W3C标准
W3C:万维网联盟(World Wide Consortium)。主要是研究web规范的。她的主要推行的规范有:HTML,CSS,XML,XHTML,DOM等。这些都可以被浏览器解析。
不过,在推行XHTML时,各大浏览器厂商不怎么鸟她,真叫她好没面子。不过web有一套统一的规范对于开发者和用户来说都是件好事。
2.动态网页开发所需的web构件。
- 首先得有个浏览器(Chrome,Firefox,Safari, IE, Opera五大浏览器),个人是偏爱chrome。ES6在他上面用得很舒服。
- HTML (超文本标签语言:HyperText Mark-up Language)用来构成网页文档。通过标签来标识超链接,文字,图片,音频,视频,表单web元素等。
- CSS(层叠样式表:Cascading Style Sheet)用来美化网页的表现。她不能离开HTML单独工作。
- JavaScript(和Java没什么关系)是客户端的脚本语言,用来写一些动效以及与用户交互。可以嵌入到html中。
- 客户端准备好了,轮到服务端了。web服务器。用来处理客户端发出的请求。(Apache服务器,Nginx服务器,IIS,Tomcat等服务器)
- PHP(HyperText Preprocessor)超文本预处理器,属于服务端的脚本语言。主要用来与数据库交互。
数据库,常见的优MySQL,Oracle,SQL Server等。
3.Web的工作原理,以及网站的运行过程
浏览器向服务器发送http请求,如果没有php 请求,web服务器直接返回所需的静态页面。如果有,web服务器就委托PHP应用程序服务器处理 。和数据库交互拿到数据 返回给web服务器。然后服务器响应返回数据。浏览器将得到的静态html代码渲染出来。
4. HTTP协议与web的关系
HTTP(超文本传输协议),他是OSI中的应用层协议。基于TCP/IP协议。目前互联网使用最多的是HTTP1.1。
浏览器与web服务器的http端口先建立TCP套接字连接。通过套接字,客户端向服务器发送请求报文(请求行,请求头,空行,请求数据),
web服务器会解析请求,定位资源。然后将资源副本写到TCP套接字。客户端再读取。响应报文(状态行,响应头,空行,响应数据)。
之后,web服务器会主动关闭TCP套接字释放TCP连接。客户端被动关闭。
先写到这里,第一次写博客,记录自己的成长。