一、单选题(共29题,每题5分)
1.以下代码 a.php 输出的结果是?
a.php 的代码如下:
b.php的代码如下:
A、foo in a
B、什么也不输出
C、报错
D、foo in b
参考答案:C
答案解析:
答案是C 想让大家思考的是、为什么在b里边使用了return、依然可以找到foo函数的定义、并且报错 Cannot redeclare foo() ? 因为php是在运行之前先解释执行、为避免表述不精确、附上文档原文:Note that because PHP processes the file before running it, any functions defined in an included file will still be available, even if the file is not executed.
2.php中单引号和双引号包含字符串的区别正确的是?
A、单引号速度快,双引号速度慢
B、双引号速度快,单引号速度慢
C、单引号里面可以解析转义字符
D、双引号里面可以解析变量
参考答案:D
答案解析:在PHP定义字符串的时候,单引号和双引号没有速度差别,但是单引号中的字符全部是原样输出,而双引号可以解析变量和转义字符。
3.在SQL语言中,子查询是?
A、选取单表中字段子集的查询语句
B、选取多表中字段子集的查询语句
C、返回单表中数据子集的查询语言
D、嵌入到另一个查询语句之中的查询语句
参考答案:D
答案解析:嵌套SELECT语句也叫子查询,一个 SELECT 语句的查询结果能够作为另一个语句的输入值。子查询不但能够出现在Where子句中,也能够出现在from子句中,作为一个临时表使用,也能够出现在select list中,作为一个字段值来返回。
4.mb_作为前缀的函数作用是?
A、按照字节获取长度
B、按照字符获取长度
C、按照厘米获取长度
D、按照公分获取长度
参考答案:B
答案解析:按照字符获取长度。
5.PHP的垃圾收集机制,说法错误的是?
A、PHP使用的回收算法是引用计数法,每个php变量存在一个叫"zval"的变量容器中。
B、一个zval变量容器,除了包含变量的类型和值,还包括两个字节的额外信息。第一个是"is_ref",是个bool值,用来标识这个变量是否是属于引用集合(reference set)。 第二个额外字节是"refcount",用以表示指向这个zval变量容器的变量(也称符号即symbol)个数。
C、把一个变量赋值给另一变量不会增加引用次数(refcount) 当任何关联到某个变量容器的变量离开它的作用域(比如:函数执行结束),或者对变量调用了函数 unset()时,"refcount"就会减1
D、变量容器在"refcount"变成0时就被销毁
参考答案:C
答案解析:把一个变量赋值给另一变量将增加引用次数(refcount)