2020年新浪最新PHP试题和答案解析

60次阅读

共计 5963 个字符,预计需要花费 15 分钟才能阅读完成。

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

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

$a\=3;echo”$a”,’$a’,”\\\\\\$a”,”${a}”,”$a”.”$a”,”$a”+”$a”;

PHP

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 加密的网页所采用的协议是(8)。

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. 在 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}$

参考答案:A

答案解析:{} 是元字符号,A 缺少元字符

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

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

A、重放攻击

B、Smurf 攻击

C、字典攻击

D、中间人攻击

参考答案:D

答案解析:A:重放攻击指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。重放攻击可以由发起者,也可以由拦截并重发该数据的地方进行。

B:Smurf 攻击是一种病毒攻击,结合使用 IP 欺骗和 ICMP 回复方法使大量网络传输充斥目标系统,引起目标系统拒绝为正常系统进行服务。Smurf 攻击通过使用将回复地址设置成网络的广播地址的 ICMP 应答请求数据包,来淹没受害主机,最终导致该网络的所有主机都对此 ICMP 应答请求做出回复,导致网络阻塞。更复杂的将源地址改为第三方的受害者,最终导致第三方崩溃。

C:字典攻击是在破解密码或密钥时,逐一尝试用户自定义词典中的可能密码的攻击方式。与暴力破解的区别是,暴力破解会逐一尝试所有可能的组合密码,而字典攻击会使用一个预先定义好的单词列表。

D:中间人攻击是一种间接的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机称为“中间人”。通过拦截正常的网络通信数据,并进行数据篡改和嗅探,而通信的双方毫不知情。

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

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

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

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

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

参考答案:C

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

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

A、冒泡排序法

B、选择排序法

C、交换排序法

D、堆排序法

参考答案:D

答案解析:暂无

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

A、下一个元素的地址

B、内存存储地址

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

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

参考答案:C

答案解析:静态链表中的指针又是游标,指示下一个元素在数组中的位置

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、极大似然估计

参考答案:D

答案解析:注意:观察序列和产生观察序列的状态序列已知

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

A、stat

B、pathinfo

C、filesize

D、basename

参考答案:A

答案解析:basename — 返回路径中的文件名部分,pathinfo — 返回文件路径的信息,filesize — 取得文件大小,stat — 给出文件的信息,其中关联的键名包含 atime,ctime,mtime 可以通过此函数获取文件的创建时间和修改时间

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);

参考答案:B

答案解析:第一种方式需要重启服务器,第三种第四种直接在脚本中用函数设置,第二种只是一个普通变量,不管用。

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

A、内因

B、外因

C、根本原因

D、不相关因素

参考答案:B

答案解析:安全威胁是产生安全事件的外因

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

A、无值

B、数值 0

C、空串

D、FALSE

参考答案:A

答案解析:NULL 值得含义是未对该列赋值,即无值。因此,选项 A 正确。

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

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

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

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

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

参考答案:D

答案解析:嵌套 SELECT 语句也叫子查询,一个 SELECT 语句的查询结果能够作为另一个语句的输入值。子查询不但能够出现在 Where 子句中,也能够出现在 from 子句中,作为一个临时表使用,也能够出现在 select list 中,作为一个字段值来返回。

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

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

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

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

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

参考答案:D

答案解析:ext3 文件系统单个文件最大:16GB-64T(取决于块尺寸) XFS 文件系统单个文件最大:8exbibytes 减 1 字节

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

du -s * | sort -nr | head

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

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

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

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

参考答案:D

答案解析:du 命令是对文件和目录磁盘使用的空间的查看 - s 或 –summarize 仅显示总计只列出最后加总的值 |sort -nr 按数值从大到小排序 |head 命令一般显示前 10 个文件

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

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

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

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

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

参考答案:D

答案解析:D 结尾要么是 01 要么是 0, 没有 011 的可能性.

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

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

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

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

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

参考答案:B

答案解析:不是多进程,而多 IO 线程,可以更好地利用多核

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

A、umount

B、dismount

C、mount -u

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

参考答案:A

答案解析:语法 umount(选项)(参数) 选项 -a:卸除 /etc/mtab 中记录的所有文件系统;-h:显示帮助;-n:卸除时不要将信息存入 /etc/mtab 文件中;-r:若无法成功卸除,则尝试以只读的方式重新挂入文件系统;-t:仅卸除选项中所指定的文件系统;-v:执行时显示详细的信息;-V:显示版本信息。参数 文件系统:指定要卸载的文件系统或者其对应的设备文件名。答案为 A

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

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

A、history

B、cd

C、echo

D、cat

参考答案:A,B,C

答案解析:history,cd,echo 是内置 bash 命令,此类命令查看帮助时需要用 help 命令。

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 有持久化功能,可以把数据随时存储在磁盘上

参考答案:B,C,D

答案解析:

Memcache

·该产品本身特别是数据在内存里边的存储,如果服务器突然断电,则全部数据就会丢失

·单个 key(变量)存放的数据有 1M 的限制

·存储数据的类型都是 String 字符串类型

·本身没有持久化功能

·可以使用多核(多线程)

Redis

·

·数据类型比较丰富:String、List、Set、Sortedset、Hash

·有持久化功能,可以把数据随时存储在磁盘上

·本身有一定的计算功能

·单个 key(变量)存放的数据有 1GB 的限制

选项 A 说 Memcache 单个 key(变量)存放的数据有 2M 的限制是不对的。

正文完
 0