《PHP攻城狮面试宝典》

博主也是一个即将面临实习的小菜鸟,每天也是十分焦虑找实习工作问题,不知道面试PHP工程师,会被问到哪些问题,害怕自己复习的不到位。相信这也是大多像我一样即将实习的小伙伴共同担心的问题吧!博主花了一些时间,在知乎、百度等上边找了一些有经验的大牛分享的经验,在这里总结了一下,希望对小伙伴们有帮助,好啦,不多废话了,下边进入正题。
一、 PHP程序员岗位招聘常见面试题
1, 请用最简单的语言告诉我PHP是什么?
PHP全称:Hypertext Preprocessor,是一种用来开发动态网站的服务器脚本语言。
2, 什么是MVC?
MVC由Model(模型), View(视图)和Controller(控制器)组成,PHP MVC可以更高效地管理好3个不同层的PHP代码。
Model:数据信息存取层
**View:**view层负责将应用的数据以特定的方式展现在界面上
Controller:通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据
3, 在页面中引用CSS有几种方式?
1,引用外部CSS文件
2,内部定义Style样式
3,内联样式
4, PHP支持多继承吗?
不可以。PHP类只能继承一个父类,并用关键字“extended”标识。
5,请问PHP中echo和print有什么区别?
这两个看起来很相似,因为它们都是将一些值打印在屏幕上。但是echo和print的本质区别在于:echo用来输出字符串,显示多个值的时候可以用逗号隔开。只支持基本类型,print不仅可以打印字符串值,而且可以打印函数的返回值。
6,请问GET和POST方法有什么区别?
我们再网页上填写的表单信息都可以通过这两个方法将数据传递到服务器上,当我们使用GET方法是,所有的信息都会出
现在URL地址中,并且使用GET方法最多只能传递1024个字符,所以如果在传输量小或者安全性不那么重要的情况下可以使用GET方法。说到POST方法,最多可以传输2MB字节的数据,而且可以根据需要调节。
7,PHP中获取图像尺寸大小的方法是什么?
getimagesize () 获取图片的尺寸
Imagesx () 获取图片的宽度
Imagesy () 获取图片的高度
8,PHP中的PEAR是什么?
PEAR也就是为PHP扩展与应用库(PHP Extension and Application Repository),它是一个PHP扩展及应用的一个代码仓库。
9,如何用PHP和MySQL上传视频?
我们可以在数据库中存放视频的地址,而不需要将真正的视频数据存在数据库中。可以将视频数据存放在服务器的指定文件夹下,上传的默认大小是2MB,但是我们也可以在php.ini文件中修改max_file size选项来改变。
10,PHP中的错误类型有哪些?
PHP中遇到的错误类型大致有3类。
提示:这都是一些非常正常的信息,而非重大的错误,有些甚至不会展示给用户。比如访问不存在的变量。
警告:这是有点严重的错误,将会把警告信息展示给用户,但不会影响代码的输出,比如包含一些不存在的文件。
错误:这是真正的严重错误,比如访问不存在的PHP类。
11,如何在PHP中定义常量?
PHP中使用Define () 来定义常量。define (“Newconstant”, 30);
12,如何不使用submit按钮来提交表单?
如果我们不想用submit按钮来提交表单,我们也可以用超链接来提交,我们可以这样写代码:

a href=”javascript: document.myform.submit();”>Submit Me a>

*13,说一说session和cookie的区别*

session 在服务器端,cookie 在客户端(浏览器)
session 默认被存在在服务器的一个文件里(不是内存)
session 的运行依赖 session id,而 session id 是存在 cookie 中的,也就是说,如果浏览器禁用了 cookie ,同时 session 也会失效(但是可以通过其它方式实现,比如在 url 中传递 session_id)
session 存放在文件、数据库或内存中都可以。
用户验证这种场合一般会用 session。
二、 一些大牛对学习PHP的经验分享

  1. 不要光只会用轮子,要学会造轮子。比如你现在在用 ThinkPHP,但请不要一直只停留在用 ThinkPHP 的基础上。一直做重复的东西不会有进步。自己造一个 PHP 框架出来,这样你才会学得更多更深入。
  2. 现在不是担心项目经验的时候。不是没项目,而是火候不够。自己的轮子都没造出来,怎么去做更有含金量的东西呢?从另一方面来说,造轮子就是一个很好的项目。
  3. 有空的时候可以看看数据结构和算法,了解一下计算机网络,了解一下编译原理,了解一下操作系统。这对以后笔试面试以及对整个计算机系统的理解都会很有帮助。计算机领域很大很大,虽然不可能全都熟悉,但绝不能仅仅把眼光局限在用 PHP 写一个网站上。

多写:自己做的项目如果用的人不多的话在简历上不算大的加分项,所以这样的项目更多是用来给自己练手的,因此没必要拘谨于没有项目可做,仿照开源程序自己动手写写还是有很大提升的

多读:如果php的话多读读轻量框架的源码,了解其实现原理,把未来能写出一个差不多的框架作为目标并为之积累经验

关于php:学习php的话tp框架不是太推荐,虽然用的人很多,但是这个框架的很多地方做的不敢恭维,个人认为很难有什么成长。建议看看laravel框架,然后去接触下Ruby on rails和java的spring,对你的思路会有很大的拓展(p.s. 还是觉得CI框架是入门php框架的最好选择)

关于基础:想进大中型公司的话数据结构和算法还是很重要的,不能觉得自己掌握了一些框架的使用经验就不去深入研究算法和数据结构。而就算不进大一些的公司,在你工作了几年之后这两者也会变得更加重要。毕竟大部分人不会安心于搬砖,而在你想往上爬的时候这两者和其他许多CS基础知识的水平决定了你爬的快慢和高度

关于方向的选择:全栈工程师自然是极好的,但是切勿涉猎广泛却少有精通,所以希望题主能选好方向,脚踏实地

三、 嘿嘿嘿,与主题无关

博主目前大三在读,一所普通二本院校,专业是软件工程云计算方向。大家可能觉得云计算大数据现在这么火,博主刚好又是这个方向的,咋就进PHP的坑了。哎,说起来都是泪啊,一方面是学校的资源达不到,另一方面也因为自身实在是对PHP比较感兴趣,大二上学期快结束的时候,正式学PHP了。大二暑假,进一家创业公司实习,做的是二次开发,大概待了半年吧,辞职了。总感觉一直没啥提升,而且特别忙,没啥时间学自己的,现在想想倒是有些后悔,觉得自己当时太浮躁,没有沉下心。目前学习了TP框架,写了两个简单的小网站(感觉没啥东西)之前了解了一些Laravel,实习之前,打算再深入了解一下TP,然后继续Laravel。哎,还是不说废话了,最后送大家两句话吧

第一句是:我本微末凡尘,却也心向天空

第二句是:走的再远,也不要忘记自己当初为什么出发

大家共勉!预祝各位和我一样即将实习的小伙伴,找到满意的实习工作!

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值