字符串是PHP的“瑞士军刀”——作为一种Web开发语言,PHP最常打交道的就是字符串。因此对于开发者来说,处理字符串是一项非常基础的技能。7 ^* z, @- G8 i5 a& l
幸运的是,由于PHP开发团队的努力,PHP对字符串的处理相当易学。你只需迈过第一个难关,接下来就一马平川了。 , J, @6 @- L$ T6 L* h+ s4 {# x: t但是,PHP的这一部分功能并非完美。本章考验你对字符串的了理解及对处理字符串的函数的认识。此外,你还必须面对正则表达式——一个非常有用,却总是被开发者忽试的工具——的编写艺术。0 A! ~% N. ]8 m* r0 h: v. t3 H
) B/ B# f. U& E. X/ y* S' P
5 v9 n8 W* e: Z4 B; r问题6 H+ O- F1 W) v, c& i8 V
5 G: y8 X. s+ l1 |6 f* O
1.考虑如下脚本。标记处应该添加什么代码才能让脚本输出字符串php?
<?php
$alpha = 'abcdefghijklmnopqrstuvwxyz';
$letters = array(15, 7, 15);
foreach($letters as $val) {
/* 这里应该加入什么 */
}
?>
复制代码
A.echo chr($val);/ s" E+ f+ y; I2 S* j3 }4 a
B.echo asc($val);# H" f( o7 _" z5 K: \
C.echo substr($alpha, $val, 2); 4 b3 |* x. P6 \% m6 lD.echo $alpha{$val};* u" d W* t3 H+ Y
E.echo $alpha{$val+1} - `4 ]' a4 F! G. U; C8 ^6 ^ N; c4 P$ T& e9 w$ J) l) N
A.fopen()( Q7 l. `& h" }3 L- L5 R
B.fread(), o( T3 u, Z7 m' o5 o5 l
C.flock()! p" i% h- s. w# [6 Q' f0 u, s# d8 p
D.split_string()! K/ M9 l3 H3 I. N
E.file()1 u( n8 @# U4 c$ j2 C2 l# P3 i
4 O# A( T6 o- s# X; F' ?( ~$ A& t + _ I9 P d0 T! }* e& T9.基于指定的式样(pattern)把一个字符串分隔开并放入数组,以下哪些函数能做到?(双选) : q5 K3 `# L; G- R1 O" N& F# z. I' k) I$ v
A.preg_split()9 H' T, v+ a6 G0 G8 W
B.ereg()/ k& T- }! |& F0 h$ a* W
C.str_split()8 |; Z" A: |7 ~' p
D.explode()# g1 k' c8 z8 V9 Z9 g# Y: j1 L
E.chop() 5 C* ]. A; H! O( c* F! |7 q5 G 3 ?+ w. x' g9 G5 ^ % j1 x: q; I0 i1 [: W3 V10.以下脚本输出什么?
<?php
echo 'Testing ' . 1 + 2 . '45';
?>
复制代码
A.Testing 1245 . ?) Y, c- P) b6 nB.Testing 3459 v4 ]7 `8 s: `" d, p E
C.Testing 1+245& j( f# n7 Y: n5 O: T+ H- d$ Y' c) j
D.2451 k) J: l1 B- S, o
E.什么都没有0 G1 h/ \& z1 m' W/ u
: a1 t1 @! q; {' X
. P, N+ w# k+ i3 U
11.以下脚本输出什么?
<?php
$s = '12345';
$s[$s[1]] = '2';
echo $s;
?>
复制代码
A.12345 9 Y( t2 I0 c' d! e# L5 r+ S8 IB.12245 , L# q. i3 Z1 M) }5 y9 nC.22345. S0 i; g: L/ Q8 V1 [+ o
D.11345- _ m% S3 m e z, m, b9 f( s
E.Array, h* t* @+ o+ D/ V9 J' b7 t$ i