欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

解析 BAT 大厂的经典面试题(下篇)

程序员文章站 2022-05-05 17:59:43
...

 解析 BAT 经典面试题

解析 BAT 大厂的经典面试题(下篇)

解析 BAT 大厂的经典面试题(下篇)

Hello,大家好。我是公众号 “八点半技术站” 的小编 - Bruce.D。

今天是周一(2020-06-08),分享一句谚语 “读书有三到,心到口到眼到” 分享给大家的是 「工具 模块」- 解析BAT面试题(下篇)

很多人对 BAT 以及其他大厂,也是朝思暮想。也因为一些原因,暂时还未能加入。大厂中有很多经典面试题,直到现在也会用,不要问小编为什么知道(保密)。

因此欢迎热爱 IT编程的各位精英,欢迎进入wechat技术群(底部有二维码)一起交流成长

花几分钟时间看看经典BAT面试题,浏览浏览,或许对你有用!!!

解析 BAT 大厂的经典面试题(下篇)

1

1. PHP 中的垃圾回收机制

主要分为三部分:

    (1)引用计数基本知识

    (2)回收周期(Collecting Cycles)

    (3)性能方面考虑的因素

具体建议参考PHP官方手册:

https://www.php.net/manual/zh/features.gc.php

Q:为什么推荐直接了解官方地址呢?

A:我谷歌搜索了一遍,感觉普遍博主讲的也就是将官方的粘贴出来,简单改了改,只有极少部分博主采用自己想法的话述。与其这样搜索,还不如直接去官方了解,岂不美哉。

2

2. Hash 数据结构

主要分为 数组 + 链表

哈希表(Hash table,也叫散列表)

官方:是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表

自家大白话:通过把Key通过一个固定的算法函数(hash函数)转换成一个整型数字,然后就对该数字对数组的长度进行取余,取余结果就当作数组的下标,将value存储在以该数字为下标的数组空间里。

当使用hash表查询时,就是使用hash函数将key转换成对应的数组下标,并定位到该下标的数组空间里获取value,这样就充分利用到数组的定位性能进行数据定位。

3

3. PHP 如何定义编码形式?

俩种方式:

(1)如果欲使用gb2312编码,那么php要输出头:

header(“Content-Type: text/html; charset=gb2312")

静态页面添加:

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件。

(2)如果欲使用utf-8编码,那么php要输出头 :

header(“Content-Type: text/html; charset=utf-8")

静态页面添加:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

所有文件的编码格式为utf-8。

4

4. 占位符是如何防止sql注入的?

案例:

$dbh = new PDO("mysql:host=localhost; dbname=demo","user","pass");
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES,false); 
$dbh->exec("set names 'utf8'"); 
$sql="select * from test where name = ? and password = ?";
$stmt = $dbh->prepare($sql);
$exeres = $stmt->execute(array($testname, $pass));

Q:拿上面这段demo来说如何防止?

A:当调用 prepare() 时,查询语句已经发送给了数据库服务器,此时只有占位符 ? 发送过去,没有用户提交的数据;

当调用到 execute()时,用户提交过来的值才会传送给数据库,他们是分开传送的,两者独立的,SQL攻击者没有一点机会。

(1)你不能让占位符 ? 代替一组值;

(2)你不能让占位符代替数据表名或列名;

(3)你不能让占位符 ? 代替任何其他SQL语法。

恭喜你,又读完了一篇文章。

在这里,希望你看完的 每篇文章 都能对自己有所提升(哪怕是帮助你再次巩固记忆)。

解析 BAT 大厂的经典面试题(下篇)

解析 BAT 大厂的经典面试题(下篇)

解析 BAT 大厂的经典面试题(下篇)

微信 : xzzs730(长按左侧二维码添加)

技术交流群备注技术

PHP|WEB|Java面试群:备注面试

商务合作:gtcarry888

解析 BAT 大厂的经典面试题(下篇)