본문 바로가기
Development/PHP

[PHP] substr 함수

by wansdream 2010. 11. 15.

string substr ( string $string , int $start [, int $length ] )


Example #1 Using a negative start
<?php
$rest 
substr("abcdef", -1);    // returns "f"
$rest substr("abcdef", -2);    // returns "ef"
$rest substr("abcdef", -31); // returns "d"
?>

Example #2 Using a negative length
<?php
$rest 
substr("abcdef"0, -1);  // returns "abcde"
$rest substr("abcdef"2, -1);  // returns "cde"
$rest substr("abcdef"4, -4);  // returns false
$rest substr("abcdef", -3, -1); // returns "de"
?>

Example #3 Basic substr() usage
<?php
echo substr('abcdef'1);     // bcdef
echo substr('abcdef'13);  // bcd
echo substr('abcdef'04);  // abcd
echo substr('abcdef'08);  // abcdef
echo substr('abcdef', -11); // f

// Accessing single characters in a string
// can also be achieved using "square brackets"
$string 'abcdef';
echo 
$string[0];                 // a
echo $string[3];                 // d
echo $string[strlen($string)-1]; // f

?>


Example #4 substr() casting behaviour
<?php
class apple {
    public function 
__toString() {
        return 
"green";
    }
}

echo 
"1) ".var_export(substr("pear"02), true).PHP_EOL;
echo 
"2) ".var_export(substr(5432102), true).PHP_EOL;
echo 
"3) ".var_export(substr(new apple(), 02), true).PHP_EOL;
echo 
"4) ".var_export(substr(true01), true).PHP_EOL;
echo 
"5) ".var_export(substr(false01), true).PHP_EOL;
echo 
"6) ".var_export(substr(""01), true).PHP_EOL;
echo 
"7) ".var_export(substr(1.2e304), true).PHP_EOL;
?>

The above example will output:
1) 'pe'
2) '54'
3) 'gr'
4) '1'
5) false
6) false
7) '1200'

한글, 일본어 등의 멀티바이트 경우에는 mb_substr를 쓸 것!!!

'Development > PHP' 카테고리의 다른 글

[PHP] 몫과 나머지 구하기  (0) 2012.02.28
[PHP] array_values  (0) 2012.02.17
[PHP] autoload 강좌  (0) 2010.12.25
[PHP] str_pad 문자 채우기 (지정 길이가 되도록 특정 문자열로 채우기)  (0) 2010.06.30
PHP 코드를 최적화하는 40가지 팁 (번역)  (0) 2009.07.25
PHP에서 @란???  (0) 2009.07.25
세션이란?  (0) 2006.01.15
include, require  (0) 2006.01.08
효율적인 경로지정  (0) 2006.01.07
원프레임 구성  (0) 2006.01.06

댓글