IT小白扫盲篇:大白话告诉你什么是PHP

什么是PHP?

作为全球最美开发语言(来源不详,程序猿都这么说),PHP主要用于web前端开发领域,是服务器端知行的嵌入式HTML文档的脚本语言。其独特的语法混合了C、Java、Perl以及PHP自创的一些语法,能快速的执行动态网页。

IT小白扫盲篇:大白话告诉你什么是PHP

说人话就是:PHP是一种开发语言,就像是你学的英语。但是这种语言是人与计算机进行交流的工具,通过这种语言可以告诉计算机你应该如何去做来实现某种功能或者目的。

PHP是完成前端页面及后端平台的搭建,还能通过混合式开发完成移动端任务,完美适配各种移动端应用。

PHP就是用来做网站,比如说网易、天猫、京东、58这样的大型网站,并且开发起来相对简单。

需要学什么?

➤前端

但凡是一个网站都必须得让人能看得见,使用得起来。任何一个网站可以没有数据库,可以没有后端程序,但是必须得有前端页面,而这也是最早期的网站形态—一 一个只能展示文字和图片等信息的静态页面。

掌握静态网页的制作技术是学习开发网站的先决条件。这里面的学习包括 HTML,CSS,JavaScript,它们可以直接使用浏览器运行。

HTML负责网页的结构,用它来规定网页排版中哪部分是文字,哪部分可以放图片,音频文件,视频文件放在网页中什么位置显示等。

CSS可以把这些文字,图片,视频等信息拥有一定的合理好看的样式,可以定义文字的大小,颜色,图片的大小等等。

JavaScript可以让网页与人产生交互,就像你登录网站,点击登录按钮就会跳转,把鼠标放到菜单,菜单就会自动展示下拉,逛淘宝时,把鼠标放在产品图片上,图片就会放大等等。

➤后端

到这里才说到我们的PHP。如果说HTML和CSS是看得见的部分,那么PHP就是看不见的部分。它负责在后面处理数据,然后返回给用户。

当网站由开始的静态页面发展到现在有了后端程序,那么网站才有了业务逻辑。简单的说,就像一台计算器,你在前端输入数据,然后点击提交,PHP给你处理运算,然后返回到前端,这时你就看到了结果。

➤MySQL数据库

当网站技术再往后发展时,人们需要网站处理存放更多的数据,来满足现实生活中的业务逻辑,这时候就需要数据库了。

数据库是什么,按字面的意思,数据库说白就是存放数据的地方,它可以是一段文字,一张图片或者一个文件的URL地址等等。比如,当你想浏览一篇文章时,你点击文章标题,这个请求会跳转到PHP文件那里,PHP再从数据库取出你想看的那篇文章。

➤框架

框架说白了就是一个已经帮你完成了部分功能的程序部件结构。

基本上到了公司动手做起真实的项目中都是使用框架来开发的,它可以使你的开发速度更快。

➤MySQL优化技术

当你学会了PHP,MySQL的一些增删改查技术后,你可以尝试做一个简单的文章管理系统了,能发布,修改,和查看文章。

但是,你试想一下,会不会遇到这样一个问题:当你查看一篇文章,MySQL需要从文章表中寻找你需要的那一篇取出来,此时你的文章已经很多了,MySQL再从里面找一篇文章是不是越来越耗时了,平常文章量少的时候也许1秒钟就能打开一篇文章,此时可能需要十来秒,你愿意等吗?用户愿意等吗?如果用户看一篇新闻需要等很长时间,那能行吗?

所以我们要对MySQL进行优化,让数据库尽量用更少的时间找到我们需要的东西。

➤页面静态化技术

当你学会了MySQL优化技术,切不要沾沾自喜,新的问题的依然很多。

可以再试想一下:一个人访问时,和大量的人访问时?当你一个人访问也许很快,但是大量的人访问,MySQL要处理大量的请求,它是忙不过来的,MySQL支持的请求数是有限的,这很容易理解吧。

假如它一次只能处理100个请求,当超过100个人时,其他的用户是不是就要等着,这样速度又降下来了。

怎么办?一个很好的解决方案是采用静态化技术。

Linux

我们的程序,数据库,整个网站终归都是放在Linux系统的服务器上的,对于一般的程序员能做到基本的配置即可。基本命令、操作、启动、基本服务配置(包括rpm安装文件,各种服务配置等);会写简单的shell脚本和awk/sed 脚本命令等一般公司有相应的运维人员管理。如果对这个有兴趣,后期可以继续深挖。

➤非关系型数据库Redis/Memcached

怎么又是数据库?不是已经讲过了MySQL了?是的,上面咱们说的MySQL是关系型数据库,所以这两个叫做非关系型数据库。

与MySQL不同的是Redis和Memcached 的数据是放在内存中的,MySQL是放在磁盘中的,而访问内存中的数据速度要远大于放在磁盘中,这就是它们的好处。

那为什么还要学习MySQL,干嘛不直接学习使用Redis和Memcached?

因为:MySQL更适合海量存储数据,Redis和Memcached是在内存中的,需要很大的内存才行,而且放在内存中的数据也容易丢失,如果机器故障重启内存就释放了。

作者:知乎/沈杰

转载网址:https://www.zhihu.com/question/20003635/answer/81745609

是不是懵逼了?

没关系,你今天看到我

就是幸运的

学了PHP能干什么?

1、网站开发

你在浏览器中输入的任何一个网址,打开的网站都有可能是PHP做的。

2、移动端应用的幕后英雄

手机应用这么多,而这些应用多多少少都要和服务器进行一些数据交互(关键的数据保存在服务器,否则岂不泄露了)。

而PHP可以作为他们的“服务器端接口”,移动端通过http协议和PHP的接口进行交互,

3、H5等第三方应用开发

最常见的是在微信中打开的各种小活动、小游戏,他们都是基于网页的HTML5应用,而PHP依然可以作为他们的后台开发语言。

为微博、淘宝、百度等开发第三方应用程序,均可以使用PHP语言,

就业前景(重点来了)

谈钱不伤感情

IT小白扫盲篇:大白话告诉你什么是PHP

北京PHP工资按工作经验统计

IT小白扫盲篇:大白话告诉你什么是PHP

PS:北京PHP程序员工资按工作经验统计,其中应届毕业生工资¥5350,0-2年工资¥11090,3-5年工资¥15100,8-10年工资¥11630,6-7年工资¥19480,该数据仅供参考。

北京PHP程序员历年工资

IT小白扫盲篇:大白话告诉你什么是PHP

PS:北京PHP工程师历年工资变化如下,2009年工资¥5042,2010年工资¥8117,2011年工资¥6447,2012年工资¥7671,2013年工资¥8221,2014年工资¥9430,2015年工资¥14603,该数据仅供参考。

PHP程序员行业竞争力

IT小白扫盲篇:大白话告诉你什么是PHP

PS:本行业竞争力数据仅代表北京PHP工程师情况,并非全国数据。数据显示:北京PHP工程师在“网络游戏”行业工资最高,为¥11040;在“北京”地区工资最高,为¥14370。

北京PHP程序员就业形势分析

IT小白扫盲篇:大白话告诉你什么是PHP

PS:北京PHP工程师就业形势分析:招聘待遇,工资6000-7999占比最多,达38%。经验要求,3-5年工作经验要求的占比最多,达57%;学历要求,本科学历要求的占比最多,达53%。该数据仅供参考。

国内PHP程序员需求量地区排行Top10

IT小白扫盲篇:大白话告诉你什么是PHP

PS:从上面统计的国内PHP程序员需求地域,可以看到北京的职位需求是6389个,排在第一位,上海的PHP职位需求4065个,深圳的PHP职位需求1879个,php工程师招聘需求旺盛。数据仅供参考。

我小白,就想学怎么办?

来点实际的,如果你打算自学,请往下看,如果你打算找个好老师教你,请直接拉到最底端联系我们。

首先,必须会一部分前端

需要了解的知识包括HTML、CSS、JavaScript,不需要深入地学习,有个概念性的理解即可。至于可以推荐的书籍还真没有没有,因为这一部分主要是练习,熟能生巧。如果是没有任何基础的,需要带领入门的话,可以去视频网站搜索相关课程视频,网上很多。

其次,关于知识学习有三个阶段

更多PHP自学干货访问中公优就业(www.ujiuye.com)

1. PHP入门段

可以在网上找到各类PHP热门视频,基本上这些视频里面都会讲到如何使用编辑,配置环境等一系列基础教程。能撸出一个个人站点/ 企业小站 就可以进入下一步了这样可以先对编程有一个初步的认识,如果没有任何电脑基础不推荐直接看书。

2. 进步段

这时候需要PHP手册了,了解常用函数。学习MySQL( 数据库 ),了解PHP各大框架 --thinkPHP,Yii,Laravel等, 然后选一款框架尝试搭建一blog,实现常规登录、注册、文章发布和修改。

3. 提高段

这一阶段的知识点主要包括:了解Linux ,在Linux下搭建 PHP环境(这时候要脱离 xamp,wamp等之流了);知道&&使用版本控制:git svn;这一阶段的书籍倒是有很多推荐,我简单罗列一下,不做详细说明了,你们自选:

《 深入PHP:面向对象、模式与实践 》

《 PHP核心技术与最佳实践 》

《 鸟哥的Linux私房菜 》

《 MySQL手册 》

《 MySQL必知必会 》

详细的了解之后需要的就是不断地去补充这些自己不懂的东西,多学,多问,多练,如果喜欢编程,想成为一名PHP程序员,最重要的就是尽快入手,不要拖!

更多IT干货内容关注:中公优就业(gsujiuye)

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: