php语言 百分网手机站

PHP程序员要掌握的知识点

时间:2020-10-04 10:53:15 php语言 我要投稿

PHP程序员要掌握的知识点

  体统掌握好每一个知识点,在敲代码的时候才会得心应手。以下是百分网小编精心为大家整理的PHP程序员要掌握的知识点,希望对大家有所帮助!更多内容请关注应届毕业生网!

PHP程序员要掌握的知识点

  一、web 架构,安全,项目经验

  2.1 介绍xdebug,apc,eAccelerator,Xcache,Zend opt的使用经验。

  2.2 使用mod_rewrite,在服务器上没有/archivers/567.html这个物理文件时,重定向到index.php?id=567 ,请先打开mod_rewrite.

  首先,打开mod_rewrite模块。

  其次,http.conf找到以下代码段:

  Options FollowSymLinks

  AllowOverride None

  将其中的:AllowOverride None 改为 AllowOverride All ,重启httpd服务即可。

  然后,在项目根目录下简历 .htaccess 文件,填写规则。

  2.3 MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化?

  a. 设计良好的数据库结构,允许部分数据冗余,尽量避免join查询,提高效率。

  b. 选择合适的表字段数据类型和存储引擎,适当的添加索引。

  c. mysql库主从读写分离。

  d. 找规律分表,减少单表中的数据量提高查询速度。

  e。添加缓存机制,比如memcached,apc等。

  f. 不经常改动的页面,生成静态页面。

  g. 书写高效率的SQL。比如 SELECT * FROM TABEL 改为 SELECT field_1, field_2, field_3 FROM TABLE.

  2.4 写出一种排序算法(原理),并说出优化它的方法。

  2.5 请简单阐述您最得意的开发之作

  2.6 对于大流量的网站,您采用什么样的方法来解决各页面访问量统计问题

  a. 确认服务器是否能支撑当前访问量。

  b. 优化数据库访问。参考2.3

  c. 禁止外部访问链接(盗链), 比如图片盗链。

  d. 控制文件下载。

  e. 使用不同主机分流。

  f. 使用浏览统计软件,了解访问量,有针对性的进行优化。

  2.7 您是否用过模板引擎? 如果有您用的模板引擎的名字是?

  Smarty

  2.8 请介绍Session的原理,大型网站中Session方面应注意什么?

  2.9 测试php性能和mysql数据库性能的工具,和找出瓶颈的方法。

  2.10 正则提出一个网页中的所有链接.

  2.11 介绍一下常见的SSO(单点登陆)方案(比如dedecms整合discuz的passport)的原理。

  2.12 您写过的PHP框架的特点,主要解决什么问题,与其他框架的不同点。

  2.13 大型的论坛/新闻文章系统/SNS网站在性能优化上有什么区别?

  2.14 相册类应用:要求在浏览器中能同时选中并上传多个文件,图片要求能剪裁,压缩包在服务器端解压。能上传单个达50M的文件。上传过程中有进度条显示。每个图片能生成四种大小缩略图,视频文件要转成flv供flash播放。叙述要涉及的各类开源软件和简单用途。

  一群猴子排成一圈,按1,2,…,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去…,如此不停的进行下去,直到最后只剩下一只猴子为止,那只猴子就叫做大王。要求编程模拟此过程,输入m、n, 输出最后那个大王的编号。用程序模拟该过程。

  二. unix/linux 基本使用

  3.1 linux下查看当前系统负载信息的一些方法。

  3.2 vim的基本快捷键。

  3.3 ssh 安全增强方法;密码方式和rsa key 方式的配置。

  3.4 rpm/apt/yum/ports 装包,查询,删除的基本命令。

  3.5 Makefile的基本格式,gcc 编译,连接的命令,-O0 和-O3区别。

  3.6 gdb,strace,valgrind的基本使用.

  三. 前端,HTML,JS

  css盒模型。

  javascript中的prototype。

  javascript中this对象的作用域。

  IE和firefox事件冒泡的不同。

  什么是怪异模式,标准模式,近标准模式。

  DTD的定义

  IE/firefox常用hack.

  firefox,IE下的前端js/css调试工具。

  四.如何理解 ThinkPHP 3.0 架构三(核心 + 行为 + 驱动)中的行为?

  核心 + 行为 + 驱动

  TP官方简称为:CBD

  这个问题,在TP手册中已经有委详细地阐述了。。

  核心(Core):就是框架的核心代码,不可缺少的东西,TP本身是基于MVC思想开发的框架。

  行为(Behavior) :行为在新版ThinkPHP的架构里面起着举足轻重的作用,在系统核心之上,设置了很多标签扩展位,而每个标签位置可以依次执行各自的独立行为。行为扩展就因此而诞生了,而且很多系统功能也是通过内置的行为扩展完成的,所有行为扩展都是可替换和增加的,由此形成了底层框架可组装的基础。

  驱动( Driver ):数据库驱动、缓存驱动、标签库驱动和模板引擎驱动,以及外置的类扩展。

  最好就是下载一份文档下来看,基本上TP里面所有的功能,都会有很详细的描述和范例讲解。

  框架,即framework。其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统。简单说就是使用别人搭好的舞台,你来做表演。而且,框架一般是成熟的,不断升级的'软件。

  为什么要用框架?

  因为软件系统发展到今天已经很复杂了,特别是服务器端软件,设计到的知识,内容,问题太多。在某些方面使用别人成熟的框架,就相当于让别人帮你完成一些基础工作,你只需要集中精力完成系统的业务逻辑设计。而且框架一般是成熟,稳健的,他可以处理系统很多细节问题,比如,事物处理,安全性,数据流控制等问题。还有框架一般都经过很多人使用,所以结构很好,所以扩展性也很好,而且它是不断升级的,你可以直接享受别人升级代码带来的好处。

  框架一般处在低层应用平台(如java 里的 J2EE)和高层业务逻辑之间的中间层。

  ThinkPHP是一个开源的PHP框架, 是为了简化企业级应用开发和敏捷WEB应用开发而诞生的

  原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。早期的思想架构来源于Struts,后来经过不断改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的Action和Dao思想和JSP的TagLib(标签库)、RoR的ORM映射和 ActiveRecord模式,封装了CURD和一些常用操作,单一入口模式等,在模版引擎、缓存机制、认证机制和扩展性方面均有独特的表现

  使用ThinkPHP,你可以更方便和快捷的开发和部署应用,当然不仅仅是企业级应用,任何PHP应用开发都可以从ThinkPHP的简单、兼容和快速的特性中受益。简洁、快速和实用是ThinkPHP发展秉承的宗旨,为此ThinkPHP会不断吸收和融入更好的技术以保证其新鲜和活力,提供WEB应用开发的最佳实践!

  作为一个整体开发解决方案,ThinkPHP能够解决应用开发中的大多数需要,因为其自身包含了底层架构、兼容处理、基类库、数据库访问层、模板引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,并且对于跨版本、跨平台和跨数据库移植都比较方便。并且每个组件都是精心设计和完善的,应用开发过程仅仅需要关注您的业务逻辑。

【PHP程序员要掌握的知识点】相关文章:

学习php前要掌握的基础知识09-17

学习php需要掌握的知识08-21

php程序员就职心态11-04

PHP程序员必须清楚的问题07-13

为什么要学习PHP?11-10

学习php前需要掌握的基础知识09-05

php面试的备考知识点08-26

零基础如何快速掌握PHP语言09-23

php编程语言入门需要掌握哪些知识08-21

新手开车转弯要掌握的技巧08-26