设为首页 收藏本站
查看: 563|回复: 0

[经验分享] php常见面试题目(基础篇)

[复制链接]

尚未签到

发表于 2017-4-3 06:20:01 | 显示全部楼层 |阅读模式
  网络上流传很广的一部分php工程师面试题目,有些phper们认为这些很形式,天下面试题目一大抄,不能考核一个人的真实水平,其实细细研究起来,无论怎样,能存在就表明其有存在的价值,在此做小编,以待今后细细研究。
  一.基础篇
  1.表单中 get与post提交方法的区别?

答:get用户端将数据加到URL后,格式为”?字段1=输入数据1&字段2=输入数据2&...\"。

由于get提交参数后会在地址栏中显示出来,所以会产生严重的安全问题。

get传输的数据量小,get传输的数据量小,这主要是因为受url长度限制;而post可以传输大量的数据。

get限制表单中数据集的范围为asc2码,而post可以支持整个iso10646字符集。


2.session与cookie的区别?

答:cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。


3.数据库中的事务是什么?

答:事务就是一系列的操作,这些操作完成一项任务。只要这些操作里有一个操作没有成功,事务就操作失败,发生回滚事件。即撤消前面的操作,这样可以保证数据的一致性。而且可以把操作暂时放在缓存里,等所有操作都成功有提交数据库,这样保证费时的操作都是有效操作。


4. echo count("abc"); 输出什么?

答:"1"

count —计算数组中的单元数目或对象中的属性个数

int count (mixed$var [, int$mode ] ), 如果 var 不是数组类型或者实现了Countable 接口的对象,将返回 1,有一个例外,如果 var 是NULL 则结果是 0。

对于对象,如果安装了 SPL,可以通过实现Countable 接口来调用 count()。该接口只有一个方法 count(), 此方法返回 count() 函数的返回值。


5. 用PHP写出显示客户端IP与服务器IP的代码

答:$_SERVER['SERVER_ADDR']服务器 


   $_SERVER['REMOTE_ADDR']客户端

<?php
$hosts = gethostbynamel('www.phpzc.com');
echo $hosts[0]; //服务器端ip
echo $_SERVER['REMOTE_ADDR'];  //客户端ip
?>
   
6. error_reporting(2047)什么作用?

答:PHP 显示所有错误 E_ALL


7. echo,print()和print_r()有什么区别?

答:echo是一个语言结构,没有返回值。

   print是一个函数,返回int类型的值。[只能打印int string]

   print_r()是一个函数,返回bool类型值,按结构输出变量的值。打印关于变量的易于理解的信息[数组、对象等]


8. 打开php.ini中的Safe_mode,会影响哪些函数?至少说出6个。

答:1:用户输入输出函数(fopen() file()require(),只能用于调用这些函数有相同脚本的拥有者)

   2:创建新文件(限制用户只在该用户拥有目录下创建文件)

   3:用户调用popen() systen()exec()等脚本,只有脚本处在safe_mode_exec_dir配置指令指定的目  录中才可能

   4:加强HTTP认证,认证脚本拥有者的UID的划入认证领域范围内,此外启用安全模式下,不会设置PHP_AUTH

   5:mysql服务器所用的用户名必须与调用mysql_connect()的文件的拥有者用户名相同

   6:受影响的函数变量以及配置命令达到40个


9. MySQL数据库,怎么优化?

答:(1)配置优化(服务器配置)

      调节服务器参数(shell->mysqld-help 生成mysql配置选项和可配置变量的表)。

    (2)建表优化(表、字段设置)

    (3)查询优化(sql语句)  

  

10. include和require的区别是什么?

答:当引用一个外部文件时,如果这个文件打开出错,require将直接中止程序, 并抛出一个Fatal Error,而include只会抛出一个warning,并继续执行include下面的语句.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-359305-1-1.html 上篇帖子: PHP下解析swf文件头 下篇帖子: PHP的url传值学习笔记
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表