php面试题(一)

1、xss漏洞的修复方式有哪些?

 过滤所有输入内容。对参数使用白名单过滤,不允许输入的内容显示到浏览器,禁止在js标签内输出用户输入的内容。

2、php什么函数,可以把错误转换为异常处理?

 set_error_handler()可指定一个回调函数,错误发生时,会自动通过指定的回调函数处理。在回调函数中抛出新的异常即可。

3、php sapi工作魔术常用的是一种?

 php-fpm

4、每周五 01:00~02:00每5分钟执行一次的crontab指令如何编写?

/5 1-2 * * 5 /bin/bash/home/test/test.sh

5、安全对一套程序来说至关重要,请说说在开发中应该注意哪些安全机制?

1)  防远程提交       

2)  防SQL注入,对特殊代码进行过滤

3)   防止注册机灌水,使用验证码;

6、PHP处理数组的常用函数?(重点看函数的‘参数’和‘返回值’)

array()创建数组

count()返回数组中元素的数目

array_push()将一个或多个元素插入数组的末尾(入栈)

array_column()返回输入数组中某个单一列的值

array_combine()通过合并两个数组来创建一个新数组

array_reverse()以相反的顺序返回数组

array_unique()删除数组中的重复值

in_array()检查数组中是否存在指定的值

7、PHP处理字符串的常用函数?(重点看函数的‘参数’和‘返回值’)

trim()移除字符串两侧的空白字符和其他字符

substr_replace()把字符串的一部分替换为另一个字符串

substr_count()计算子串在字符串中出现的次数

substr()返回字符串的一部分

strtolower()把字符串转换为小写字母

strtoupper()把字符串转换为大写字母

strtr()转换字符串中特定的字符

strrchr()查找字符串在另一个字符串中最后一次出现

strstr()查找字符串在另一字符串中的第一次出现(对大小写敏感)

strrev()反转字符串

strlen()返回字符串的长度

str_replace()替换字符串中的一些字符(对大小写敏感)

print()输出一个或多个字符串

explode()把字符串打散为数组

is_string()检测变量是否是字符串

strip_tags()从一个字符串中去除HTML标签

mb_substr()用来截中文与英文的函数

8、PHP处理时间的常用函数?(重点看函数的‘参数’和‘返回值’)

date_default_timezone_get()返回默认时区。

date_default_timezone_set()设置默认时区。

date()格式化本地时间/日期。

getdate()返回日期/时间信息。

gettimeofday()返回当前时间信息。

microtime()返回当前时间的微秒数。

mktime()返回一个日期的 Unix时间戳。

strtotime()将任何英文文本的日期或时间描述解析为 Unix时间戳。

time()返回当前时间的 Unix时间戳。

9、PHP操作文件的常用函数?(重点看函数的‘参数’和‘返回值’)

① fopen() 打开文件或者 URL

unlink() 删除文件

file_get_contents () 将整个文件读入一个字符串

fwrite () 写入文件

⑤ copy()复制文件

⑥ fclose 关闭一个已打开的文件指针

⑦ rename() 函数重命名文件或目录等等

10、PHP操作目录(文件夹)的常用函数?(重点看函数的‘参数’和‘返回值’)

opendir() 打开目录

② rmdir() 删除空目录

③ readdir() 获取打开目录中的一条子目录/文件名称

mkdir() 创建目录

⑤ rename() 函数重命名文件或目录

⑥ closedir() 关闭目录

11、你用什么方法检查PHP脚本的执行效率(通常是脚本执行时间)和数据库SQL的效率(通常是数据库Query时间),并定位和分析脚本执行和数据库查询的瓶颈所在?

PHP脚本的执行效率
a、代码脚本里计时;

b、xdebug统计函数执行次数和具体时间进行分析,最好使用工具winCacheGrind分析;

c、在线系统用strace跟踪相关进程的具体系统调用。

数据库SQL的效率
a、sql的explain(mysql),启用slow query log记录慢查询;

b、通常还要看数据库设计是否合理,需求是否合理等。
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值