PHP 웹프로그래밍

[문자열함수] 알파벳 순서대로 출력하기

2017.02.23
ord(); string에서 첫번째 문자의 아스키 값을 반환합니다.
chr(); ascii에 지정한 문자를 가지는 한 글자의 문자열을 반환합니다.


ascii 코드로 되어 있는 문자들은 해당문자를 ascii에 해당하는 숫자로 바꿔서 순차적으로 1씩 더해서 출력하면, 결론적으로 알파벳을 차례로 출력할수 있다.

하지만 PHP에서는 더 간단한 방법이 있다.


<?

echo "1_for : ";

for($a = ord('a'); $a <= ord('z'); $a++) echo chr($a).", ";

echo "<br>2_for : ";

for( $i=1, $a='a'; $i <=26; $i++,$a++ ) echo $a.", ";

echo "<br>3_for : ";



for( $a='A'; $a != 'AA'; $a++ ) echo $a.", ";



echo "<br>4_for : ";

for( $i=1, $a='a'; $i <=100; $i++,$a++ ) echo $a.", ";

?>

첫번째 for문은 다들 아는 방식일 것이다.



그럼 2번째 for문은 어떻게 된걸까? 일단 결과를 공개 하자면,





1_for : a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z,

2_for : a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z,

3_for : A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z,

4_for : a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, aa, ab, ac, ad, ae, af, ag, ah, ai, aj, ak, al, am, an, ao, ap, aq, ar, as, at, au, av, aw, ax, ay, az, ba, bb, bc, bd, be, bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, bq, br, bs, bt, bu, bv, bw, bx, by, bz, ca, cb, cc, cd, ce, cf, cg, ch, ci, cj, ck, cl, cm, cn, co, cp, cq, cr, cs, ct, cu, cv,

위와 같은 결과가 나온다. 변수에 'a'를 집어넣고 해당 변수를 +1을 해주면 알아서 b가 나오게 된다. 거기다가, 이건 z 이상 출력 되면 다음엔 aa, ab, ac, 순서로 나오게 된다.

마치 알파벳으로 26진법을 사용하듯이...

이 포스트 공유하기

글수정  글삭제 전체목록