PHP面试题2019年新浪工程师面试题及答案解析

一、单选题(共28题,每题5分)

1.以下语句输出的结果是什么?

A、3$a\$a3336

B、33\$a3336

C、$a$a\$a3336

D、3$a\$a333$a$a

参考答案:A

答案解析:\是转义的意思

 

2.包含文件方式,下列哪个是错误的?

A、include

B、include_once

C、require

D、import

参考答案:D

答案解析:import是CSS的引入方式。

 

3.三个人独立地破译一份密码,已知各人能译出的概率分别为 1/5,1/4,1/3,则密码能被破译的概率为 ?

A、1/60

B、3/5

C、59/60

D、13/30

参考答案:B

答案解析:题目中,至少有一人能破译密码和三人都不能破译密码是对立事件。 所以至少有一人能译出的概率=1-三人都没译出的概率=1-(1-1/5)(1-1/3)(1-1/4)=1-2/5=3/5

 

4.innodb的事务与日志的实现方式?

A、redo

B、redo和undo

C、undo

D、无

参考答案:B

答案解析:1.有多少种日志 redo/undo 2.日志的存放形式 redo:在页修改的时候,先写到redo log buffer 里面,然后写到redo log 的文件系统缓存里面(fwrite),然后再同步到磁盘文件(fsync)。 Undo:在MySQL5.5之前,undo只能存放在ibdata\*文件里面,5.6之后,可以通过设置innodb\_undo\_tablespaces参数把undo log存放在ibdata\*之外。 3.事务是如何通过日志来实现的,说得越深入越好。 因为事务在修改页时,要先记undo,在记undo之前要记undo的redo,然后修改数据页,再记数据页修改的redo。Redo(里面包括undo的修改)一定要比数据页先持久化到磁盘。当事务需要回滚时,因为有undo,可以把数据页回滚到前镜像的状态,崩溃恢复时,如果redo log中事务没有对应的commit记录,那么需要用undo把该事务的修改回滚到事务开始之前。如果有commit记录,就用redo前滚到该事务完成时并提交掉。

 

5.PHP面向对象方法重写描述错误的是?

A、子类必须继承父类

B、子类可以重写父类已有方法

C、重写之后子类会调用父类方法

D、子类也可以具有与父类同名的属性,进行属性覆盖

参考答案:C

答案解析:

重写之后子类不会再去调用父类的方法,而是直接调用自身的方法

 

6.TCP/IP协议栈中的位置(由上到下)?

A、TCP->IP->HTTP->数据链路层

B、IP->HTTP->TCP->数据链路层

C、HTTP->IP->TCP->数据链路层

D、HTTP->TCP->IP->数据链路层

参考答案:D

答案解析:HTTP协议通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上 正确排序为HTTP->TCP->IP->数据链路层

 

7.在PHP面向对象中有一个通用方法__toString()方法,下面关于此方法描述或定义错误的是( ):

A、此方法是在直接输出对象引用时自动调用的方法。

B、如果对象中没有定义此方法时,直接使用echo输出此对象,会报如下错误:Catchable fatal error: Object of class A could not be converted to string.

C、此方法中一定要有一个字符串作为返回值。

D、此方法用于输出信息的,如下所示:public function __toString( ){ echo "This is Class ....";}

参考答案:D

答案解析:选 D 应该是return

 

8.关于php预定义变量说法错误的是?

A、$HTTP_RAW_POST_DATA获取原生post数据

B、$_GET和$_POST 分别获取HTTP GET 和 HTTP POST 的数据

C、$_REQUEST 变量默认情况下包含了 $_GET,$_POST的数组。

D、建议使用php://input替代$HTTP_RAW_POST_DATA,因为它不依赖特定的php.ini指令,需要更少的内存。

参考答案:C

答案解析:$_REQUEST 变量默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组。

 

9.传输经过SSL加密的网页所采用的协议是()。

A、HTTP

B、HTTPS

C、S-HTTP

D、HTTP-S

参考答案:B

答案解析:HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。参考答案:(8)B

 

10.在其他条件不变的前提下,以下哪种做法容易引起机器学习中的过拟合问题()

A、增加训练集量

B、减少神经网络隐藏层节点数

C、删除稀疏的特征

D、SVM算法中使用高斯核/RBF核代替线性核

参考答案:D

答案解析:复杂模型容易导致过拟合

 

很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,对此我整理了一些资料,需要的可以免费分享给大家(11年架构师带你解读年薪50万面试通关秘籍。)

如果喜欢我的文章,想与一群资深开发者一起交流学习的话,获取更多相关大厂面试咨询和指导,欢迎加入我的学习交流群点击此处PHP高级交流

 

11.在TCP/IP协议栈中,ARP协议的作用是(请作答此空),RARP协议的作用是( )。

A、从MAC地址查找对应的IP地址

B、由IP地址查找对应的MAC地址

C、把全局IP地址转换为私网中的专用IP地址

D、用于动态分配IP地址

参考答案:B

答案解析:在TCP/IP协议栈中,ARP协议的作用是由IP地址查找对应的MAC地址,RARP协议的作用正好相反,是由MAC地址查找对应的IP地址。

 

12.不能匹配数字的正则表达式是

A、^{0-9}*$

B、^\d{n}$

C、^\d{n,}$

D、^\d{m,n}$

 

13.如果一名攻击者截获了一个公钥,然后他将这个公钥替换为自己的公钥并发送给接收...

如果一名攻击者截获了一个公钥,然后他将这个公钥替换为自己的公钥并发送给接收者,这种情况属于哪一种攻击

A、重放攻击

B、Smurf攻击

C、字典攻击

D、中间人攻击

 

14.下面有关内核线程和用户线程说法错误的是?

A、用户线程因<br>I/O 而处于等待状态时,整个进程就会被调度程序切换为等待状态,其他线程得不到运行的机会

B、内核线程只运行在内核态,不受用户态上下文的影响

C、用户线程和内核线程的调度都需要经过内核态

D、内核线程有利于发挥多处理器的并发优势,但却占用了更多的系统开支

参考答案:C

答案解析:用户线程不需要,不然golang就没有存在的意义了。

 

15下面排序算法中,平均排序速度最快的是(  )。

A、 冒泡排序法

B、 选择排序法

C、 交换排序法

D、 堆排序法

参考答案:D

答案解析:暂无

 

16.静态链表中,指针表示的是()

A、下一个元素的地址

B、内存存储地址

C、下一个元素在数组中的位置

D、左链和右链指向的元素的地址

 

 

17.下面关于XML描述错误的是:( )

A、XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)

B、PHP可以使用DOM方式解析XML,也可以使用sax方式解析XML。

C、RSS也叫聚合RSS是在线共享内容的一种简易方式,它也是使用XML格式存储数据。

D、WebService传输的数据格式不可以使用XML格式的

参考答案:D

答案解析:暂无

 

18.在HMM中,如果已知观察序列和产生观察序列的状态序列,那么可用以下哪种方法直接进行参数估计()

A、EM算法

B、维特比算法

C、前向后向算法

D、极大似然估计

 

 

19.下列函数中,哪个函数可以获取文件的创建时间和修改时间

A、stat

B、pathinfo

C、filesize

D、basename

 

20以下哪种方法不可以设置PHP的最大执行时间为120秒?

A、修改php的配置文件 php.ini 文件,max_executin_time = 120;

B、$max_execution_time = 120

C、ini_set("max_execution_time", "120");

D、set_time_limit(120);

 

21.安全威胁是产生安全事件的______。

A、内因

B、外因

C、根本原因

D、不相关因素

 

22.在MySQL中,NULL的含义是()

A、无值

B、数值0

C、空串

D、FALSE

 

23.在SQL语言中,子查询是?

A、选取单表中字段子集的查询语句

B、选取多表中字段子集的查询语句

C、返回单表中数据子集的查询语言

D、嵌入到另一个查询语句之中的查询语句

  

24下列关于文件的选项中,错误的是?

A、在linux中,一切几乎都是文件,目录也是文件

B、每个文件都要有一个“inode”数据

C、ext3文件系统和XFS文件系统文件名最长都是255字节

D、ext3文件系统和XFS文件系统的单个文件大小都是取决于块的尺寸

 

25.以下命令描述正确的是?

du -s * | sort -nr | head

A、当前目录下个文件或目录的大小

B、对当前目录文件进行排序

C、读取占用空间最大的文件夹

D、显示前10个占用空间最大的文件或目录

  

 

26.正则表达式 1*(0|01)* 表示的集合元素的特点是()

A、长度为奇数的 0、1 串

B、开始和结尾字符必须为 1 的 0、1 串

C、串的长度为偶数的 0、1 串

D、不包含子串 011 的 0、1

 

27.PHP的Swoole扩展特点,说法错误的是?

A、Accept线程,解决Accept性能瓶颈和惊群问题

B、多进程,可以更好地利用多核

C、提供了全异步和半同步半异步2种模式

D、处理高并发IO的部分用异步模式

 

 

28.如何从当前系统中卸载一个已装载的文件系统?

A、umount

B、dismount

C、mount -u

D、从 /etc/fstab 中删除这个文件系统项

  

二、多选题(共2题,每题5分)

1.下面哪些命令是bash的内置命令?

A、history

B、cd

C、echo

D、cat

 

2.关于Memcache与Redis的说法正确的有?

A、Memcache单个key(变量)存放的数据有2M的限制, Redis单个key(变量)存放的数据有1GB的限制

B、Memcache存储数据的类型都是String类型,Redis数据类型比较丰富:String、List、Set、Sortedset、Hash

C、Memcache可以使用多核(多线程),而Redis只是支持单线程

D、Memcache服务器突然断电,则全部数据就会丢失; 而Redis有持久化功能,可以把数据随时存储在磁盘上

posted @ 2019-09-30 16:15  想出门的程序媛  阅读(1687)  评论(0编辑  收藏  举报