做一个PHP程序员都需要学什么?

做一个PHP程序员都需要学什么?,第1张

PHP最像语言就是C++,学会C++,再看"十天学会PHP"(其实3天就够..)基本上就能入门PHP.

但是PHP只是嵌套到HTML中的脚本语言,显然要建站是不够的.

PHP就相当于一个网站的逻辑层,别人夸一个网站性能很好,BUG少,就是指PHP.

还需要学习内容

HTML(要求入门,至少要知道标签高晌):相当网站展现层,别人夸一个网站做的很美就是指HTML.

JAVASCRIPT脚本语言:简称JS,网站一些d出框,登入判断就是靠JS.

数据库mysql:别人说这个网站做的很大,用户很多,就是指数据库信息多,为什么一些公司花几亿收购一个网站目的就是要如竖数据,要做一个跟百度一模一样的网站,花10W就能搞定.....

以上三个是PHP程序员必备,当你要脱离初级程序员门槛时候就需要学会:

Linux系统的 *** 作,ajax异步请求,精通javascript,SHELL脚本,这些是后话...学到一定程渣念大度自然会了解.

怎么样才算是一名合格的PHP程序员?答案是能够完成基本的LNMP系统安装,简单配置维护能够做基本的简单系统的PHP开发能够在PHP中型系统中支持某个PHP功能模块的开发。完成这些内容的时间因人而异,有的成长快半年一年就过了,成长慢的两三年也有。

一名合格的PHP程序员需要学习的内容有哪些?下面来看看北京北大青鸟PHP培训老师的看法。

1.PHP:

基本语法数组、历纤字符串、数据库、XML、Socket、GD/ImageMgk图片处理等等熟悉各种跟MySQL *** 作链接的api(mysql/mysqli/PDO),知道各种编码问题的解决知山伍道常规熟练使用的PHP框架(ThinkPHP、Zendframework、Yii、Yaf等)了解基本MVC的运行机制和为什么这么做,稍微知道不同的PHP框架之间的区别能够快速学习一个MVC框架。能够知道开发工程中的文件目录组织,有基本的良好的代码结构和风格,能够完成小系统的开发和中型系统中某个模块的开发工作。

2.Nginx:

做到能够安装配置nginx+php,知道基本的nginx核心配置选项,知道server/fastcgi_pass/access_log等基础配置,目标是能够让nginx+php_fpm顺利工作。

3.MySQL:

会自己搭建mysql,知道基本的mysql配置选项知道innodb和myisam的区别,知道针对InnoDB和MyISAM两个引擎的不同配置选项知道基本的两个引擎的差异和选择上面的区别能够纯手工编译搭建一个MySQL数据库并且配置好编码等正常稳定运行核心主旨是能够搭建一个可运行的MySQL数据库。

4.Linux:

基本命令、 *** 作、启动、基本服务配置(包括rpm安装文件,各种服务配置等)会写简单的shell脚本和awk/sed脚本命令等。

5.前端:

如果条件时间允许,可以适当学习下HTML/CSS/JS等相关知识,逗烂或知道什么web标准,div+css的web/wap页面模式,知道HTML5和HTML4的区别了解一些基本的前端只是和JS框架(jQuery之类的)了解一些基本的JavaScript编程知识(本项不是必须项,如果有时间,稍微了解一下是可以的,不过不建议作为重点,除非个人有强烈兴趣)

6.系统设计:

能够完成小型系统的基本设计,包括简单的数据库设计,能够完成基本的:浏览器->Nginx+PHP->数据库架构的设计开发工作能够支撑每天几十万到数百万流量网站的开发维护工作。

一、两张表 city表和province表。分别为城市与省份的关系表。

表名:city

id City Provinceid

1 广州 1

2 深圳 1

3 惠州 1

4 长沙 2

5 武汉 3

………. 广州

表名称:province:

id Province

1 广东

2 湖南

3 湖北

……….

1、写一条sql语句关系两个表,实现:显示城市的基本信息。显示字段:城市id ,城市名, 所属省份 。

如:

Id(城市id) Cityname(城市名) Privence(所属省份)

2、如果要统计每个省份有多少个城市,请用group by 查询出来。显示字段:省份id ,省份名,包含多少个城市。

二、主键 和外键表示什么?一般用于做什么?

主键:能够唯一表示数据表中的每个记录的字段或者字段的组合就称为主键。一个主键是唯一识别一个表的每一行记录,但这只是其作用的一疗分,主键的主要作用是将记录和存放在其他表中的数据进行关联,在这一点上,主键是不同表中各记录间的简单指针,主键约整就是确定表中的每一条记录,主键不能是空值,唯一约束是用于指定一个或多个列的组合值具有唯一性,以防止在列中输入重复的值,所以,主键的值对用户而言是没有什么意义,并且和它赋予的值也没有什么特别联系。

外键:若有两个表A,B,C是A的主键,而B中也有C字段,则C就是表B的外键,外键约束主要用来维护两个表之间数据的一致性。A为基本表,B为信息表。

在数据库中,常常不只是一个表,这些表之间也不是相互独立的,不同的表之间需要建立一种关系,才能将它们的数据相互沟通,而在这个沟通过程中,就需要表中有一个字段作为标志,不同的记录对应的字段取值不能相同,也不能是空白的,通过这个字段中不同的值可以区别各条记录,就像我们区别不同的人,每个迟羡人都有名字,但它却不能作为主键,因为人名很容易出现重复,而身份z号是每个人都不同的,所以可以根据它来区别不同的人,数据库的表中作为主键的段段就要像人的身份z号一样,必须是每个记录的值都不同,这才能根据

主键的值来确定不同的记录。

关系:外键一定是另外某个表的主键。

三、select now(),Date_ADD(now(),INTERVAL 14 day),Date_SUB(now(),INTERVAL 3 Day) from table会获得什么内容,请写出来。

会获得三条数据:

第一条:当前时间;

第二条:当前时间加上14天;

第三条:当前时间减去3天。

四、您所知道的MYSQL 数据库备份,还原方式有哪几种?

备份:

一,搭建主从架构,master-slave,通过binlog文件同步复制主库的数据,也可以直接通过binlog文件恢复数据。

二,通过系统计划任务执行mysqldump做周期性全备份。

三,冲桥物理备份,直接拷贝数据文件、参数文件、日志文件。

还原:

一.通过mysql *** 作工具,如phpmyadmin,sqlyog等导入备份过散旦猛的数据库文件。

二.将物理备份的文件拷贝到mysql的data目录下

五、内容管理系统中,表message有如下字段

id 文章id

title 文章标题

content 文章内容

category_id 文章分类id

hits 点击量

创建上表,写出MySQL语句

六、同样上述内容管理系统:表comment记录用户回复内容,字段如下

comment_id 回复id

id 文章id,关联message表中的id

comment_content 回复内容

现通过查询数据库需要得到以下格式的文章标题列表,并按照回复数量排序,回复最高的排在最前面

文章id 文章标题 点击量 回复数量

用一个SQL语句完成上述查询,如果文章没有回复则回复数量显示0

七、内容管理系统,表category保存分类信息,字段如下

category_id int(4) not null auto_increment;

category_name varchar(40) not null

用户输入文章时,通过选择下拉菜单选定文章分类

写出如何实现这个下拉菜单

八、PHP文件 *** 作

1、内容管理系统:用户提交内容后,系统生成静态HTML页面;写出实现的基本思路

2、简单描述用户修改发布内容的实现流程和基本思路

1)当用户提交后生成一个由url地址MD5后的文件的编译页面,用文件处理file函数生成一个模板合成页,判断模板编译页是否有,模板页无或者编译页的创建时间戳小于模板页的修改时间都会从新生成编译页面,编译后的页面会调用对应数据库的值显示在页面中,通过对内存数据的读取释放,显示出我们看到的静态数据,然后用file文件将其保存起来生成静态的页面

2)当用户修改了发布内容都会修改数据相关的内容,并通过编译页面更新静态数据并用文件的方式缓存起来,当用户查看时将不做任何数据库查找,直接调用该缓存文件即可


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12552488.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存