欢迎大家来到IT世界,在知识的湖畔探索吧!
今天浙江优就业的小U老师为大家带来的干货分享是一些比较经典的php面试题,希望可以帮助到大家啊。
1、如何取得客户端的IP(要求取得一个int)
$_SERVER[“REMOTE_ADDR”]:ip2long进行转换
2、include 和 require 的区别
require:出现错误后直接终止退出,程序不再执行 include:包含一个不存在的文件,会提示警告程序会继续执行
3、@test()和&test()的区别
@test()的作用是屏蔽test()方法中警告的作用 &test()引用test()方法
4、array+array与array_merge()的区别二者之间的区别是:
键名为数字时,array_merge()不会覆盖掉原来的值,但+合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉(不是覆盖)
键名为字符时,+仍然把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉,但array_merge()此时会覆盖掉前面相同键名的值
5、什么是魔术引号(magic_quotes_gpc)?
魔术引号(Magic Quotes)是一个自动将进入PHP脚本的数据进行转义的过程。
6、在类的方法中,如何调用其父类的同名方法?
parent::方法名
7、描述一下PHP开发中常见的几种攻击以及解决方案
SQL注入: 解决这个问题的办法是,将 PHP 的内置 mysql_real_escape_string() 函数用作任何用户输入的包装器。这个函数对字符串中的字符进行转义,使字符串不可能传递撇号等特殊字符并让 MySQL 根据特殊字符进行操作。
跨站点脚本攻击(XSS): strip_tags() 函数,这个函数可以清除任何包围在 HTML 标记中的内容 或者使用htmlspecialchars() 函数。
8、字符串“\r”,”\n”,”\t”,”\x20″分别代表什么?
“\r”代表的含义是: 在Linux、unix 中表示返回到当行的最开始位置,在Mac OS 中表示换行且返回到下一行的最开始位置,相当于Windows 里的 \n 的效果。
“\n”代表的含义是: 在Windows 中表示换行且回到下一行的最开始位置。相当于Mac OS 里的 \r 的效果,在Linux、unix 中只表示换行,但不会回到下一行的开始位置。
“\t”所代表的含义是: 键盘上的“TAB”键,跳格(移至下一列)。
“\x20”所代表的含义是:是32在ASCII表中16进制的表示。
9、请列举最少3个PHP对象的魔术方法并说明他们的用途。
构造方法: __construct()
析构方法__destruct()
__get() 控制私有的受保护的未定义的成员属性的访问
__set() 对私有的受保护的未定义的成员属性进行赋值控制
__isset() 对私有的受保护的未定义成员属性进行isset和empty的判断控制
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/30086.html