• 技术文章 >头条

    PHP 安全经验相关面试题10大问题总结

    PHP中文网PHP中文网2019-09-18 17:23:41原创7797
    相关推荐:《2019年PHP面试题大汇总(收藏)

    1 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 对于大流量的网站,您采用什么样的方法来解决各页面访问量统计问题

    a. 确认服务器是否能支撑当前访问量。
    b. 优化数据库访问。
    c. 禁止外部访问链接(盗链), 比如图片盗链。
    d. 控制文件下载。
    e. 使用不同主机分流。
    f. 使用浏览统计软件,了解访问量,有针对性的进行优化。

    3 写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把标记及其内容都去掉)

    答:

    PHP

    /<[^>].*?>.*?<\/>/si

    4 用PHP打印出前一天的时间格式是2006-5-10 22:21:21

    答:echo date('Y-m-d H:i:s', strtotime('-1 day'));

    5 echo(),print(),print_r()的区别

    答:echo是语言结构,无返回值;print功能和echo基本相同,不同的是print是函数,有返回值;print_r是递归打印,用于输出数组对象

    6 如何实现字符串翻转?

    答:.用strrev函数呗,不准用PHP内置的就自己写:

    strrev($str)  
    {  
        $len=strlen($str);  
        $newstr = '';  
        for($i=$len;$i>=0;$i--)  
        {  
            $newstr .= $str{$i};  
        }  
        return $newstr;  
    }

    7 实现中文字串截取无乱码的方法。

    答:mb_substr()

    8 如何用php的环境变量得到一个网页地址的内容?ip地址又要怎样得到?

    答:$_SERVSR[‘REQUEST_URI’] , $_SERVER[‘REMOTE_ADDR’]

    9 求两个日期的差数,例如2007-2-5 ~ 2007-3-6 的日期差数

    答:(strtotime(‘2007-3-6’)-strtotime(‘2007-2-5’))/3600*24

    10 如何通过javascript判断一个窗口是否已经被屏蔽

    答:获取open()的返回值,如果是null,就是屏蔽了

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:大问题 php 试题
    上一篇:php面试题及答案2018年6月3号更新 下一篇:php外包公司常见的面试题
    Web大前端开发直播班

    相关文章推荐

    • 大文件怎么快速上传?来看看我的实现方法!• 强推:20个值得收藏的ES6小技巧• 20个不可错过的github前端开源项目,赶紧放入收藏夹!• 前端开发不可错过的25个网站,快放入收藏夹!• 面试官:npm run xxx时发生了啥?请开讲!

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网