当前位置:首页 > php面试题及答案2
13.以下哪个比较将返回 true?(双选) A.’1top’ == ’1′ B.’top’ == 0 C.’top’ === 0 D.’a’ == a E.123 == ’123′
14.如果用+操作符把一个字符串和一个整型数字相加,结果将怎样? A.解释器输出一个类型错误
B.字符串将被转换成数字,再与整型数字相加 C.字符串将被丢弃,只保留整型数字 D.字符串和整型数字将连接成一个新字符串 E.整形数字将被丢弃,而保留字符串
15.考虑如下脚本。假设 http://www.php.net 能被访问,脚本将输出什么? $s = file_get_contents (\strip_tags ($s, array ('p')); echo count ($s); ?>
A.www.php.net 的主页的字符数 B.剔除
标签后的 www.php.net 主页的字符数 C.1 D.0 E.剔除
以外的标签后的 www.php.net 主页的字符数
16.哪个函数能不区分大小写得对两个字符串进行二进制比对? A.strcmp() B.stricmp() C.strcasecmp() D.stristr() E.以上都不能
17.以下哪些函数能把字符串里存储的二进制数据转化成十六进制?(双选)A.encode_hex() B.pack() C.hex2bin() D.bin2hex() E.printf()
18.哪个函数能用来确保一个字符串的字符数总是大于一个指定值?答案:____________ 19.以下脚本输出什么? $a = 'able osts indy';
echo wordwrap ($a, 1, \?>
答案:____________ 20.以下脚本输出什么? $x = 'apple';
echo substr_replace ($x, 'x', 1, 2);
?> A.x B.axle C.axxle D.applex E.xapple 答案
1. substr 函数能够胜任,但考虑到输出三个字母就需要三次调用该函数,所以排除此方法。
那么$alpha{$val}和$alpha{$val+1}是仅有的两个可能输出题目要求的字符串的选项。因 为 0 是数组的第一个索引,所以答案是 D。
2. 除了 A 以外的选项都能输出题目要求的字符串。PHP 中,加号(+)不能把两个字符 串合并成一个。
3. substr 函数返回字符串的一部分,而 strpos 函数擅长从一个字符串中找出某个指定的子
串。同时使用这两个函数将满足题目要求。注意,前一个函数从 0 开始索引,而后者 不是,因此需要+1。答案是 D。
4. 答案是 D。explode 函数使用一个字符串分隔另一个字符串,并把结果放入一个新建的 数组。strtok 函数也可以做同样的事,但需要多次调用。
5. 答案是 D。strcmp()提供了安全的字符串比较机制。注意,选项 C 是错的,strcasecmp() 不是一个“万能”函数,因为它不区分大小写。
6. 选项中没有一个正则表达式能真正代表题目所给字符串的匹配方式,但是选项 A 和 E 仍然能勉强匹配。选项 A 太普通了,它能够匹配任何字符串,因此答案是 E。
7. 正确答案是 A,B 和 E。用 crypt()和 str_rot13()来验证一个字符串是否被改变,效率很
低。crc32()比前面两个函数好些,如果能容忍一些小错误的话,它是个不错的选择。 8. file 函数将文件的文本内容读入一个数组,每个元素是一行。因此答案 E 正确。也许你
想知道为什么要把这样一个题目放在讲字符串的章节中,那是为了提醒你每一章的题 目所包含的知识点并不是绝对严格区分开的,正如写 PHP 脚本时,file 函数不能脱离 字符串函数单独存在一样。
9. 尽管条件不同,但 preg_split 和 explode 函数都能满足题目要求。ereg()拿一个正则表达
式匹配一个字符串;str_split()按固定长度分隔字符串;而 chop()则是 rtrim()别名,用来
移除字符串末尾处的空格。
10.本题考察你对字符串操作及操作符优先级的认识。连接运算符(.)的优先级比加号(+) 高。因此 PHP 解释器实际执行的运算可以表示为(‘Testing ‘ . 1) + (2 . ’45′)。由于字符串
test 1 不是数字,所以加号前面的运算等于 0。加号后面的运算等于 245,PHP 输出的 结果是 0+245,等于 245,所以答案是 D。
11.可以用访问数组元素的方式访问字符串中的字符,因此脚本只是把字符串中的第二个 字符($s[1])替换成了字符 2,最终将输出 12245。答案是 B。
12.本题的要点是理解这个正则表达式的含义——从左往右,首先是零个或多个任意字符 (.*),跟着是一个星号(\\*),然后是 123,最后是一个数字。因此答案是 C 和 D。 13.B 和 E 正确。选项 B 中,在比较时,字符串 top 等同于数字 0。==操作符不比对数据
类型,所以将返回 true。答案 E 中,字符串 123 等同于数字 123,比较将返回 true。 14.字符串将被转换成数字(如果无法发生转换就是 0),然后与整型数字相加。答案是 B。
共分享92篇相关文档