PHP / 함수 / substr() / 문자열의 일부분을 추출하는 함수

개요

  • substr()은 문자열의 일부분을 추출하는 함수입니다.
  • PHP 4 이상에서 사용할 수 있습니다.

문법

substr( string, start [, length ] )
  • string : 추출의 대상이 되는 문자열입니다.
  • start : 추출을 시작하는 위치입니다.
  • length : 추출할 문자의 개수입니다. 값이 없으면 문자열의 끝까지 추출합니다. 음수일 때는 위치를 뜻하고, 그 위치 앞까지의 문자를 추출합니다.
substr( 'abcdefg', 3 );

abcdefg에서 3 위치의 문자는 d입니다. d부터 끝까지의 문자를 추출합니다. 즉, defg입니다.

substr( 'abcdefg', 3, 2 );

abcdefg에서 3 위치의 문자 d부터 2개의 문자를 추출합니다. 즉, de입니다.

substr( 'abcdefg', -3, 2 );

abcdefg에서 -3 위치의 문자는 e입니다. e부터 2개의 문자를 추출합니다. 즉, ef입니다.

substr( 'abcdefg', -3, -1 );

abcdefg에서 -3 위치의 문자는 e, -1 위치의 문자는 g입니다. e부터 g 앞의 문자 f까지의 문자를 추출합니다. 즉, ef입니다.

예제

<!doctype html>
<html lang="ko">
	<head>
		<meta charset="utf-8">
		<title>PHP</title>
		<style>
			body { 
				font-family: Consolas, monospace;
			}
		</style>
	</head>
	<body>
		<?php
			echo '<p>substr( "abcdefg", 3 ) : ' . substr( "abcdefg", 3 ) . '</p>';
			echo '<p>substr( "abcdefg", 3, 2 ) : ' . substr( "abcdefg", 3, 2 ) . '</p>';
			echo '<p>substr( "abcdefg", 3, 1 ) : ' . substr( "abcdefg", 3, 1 ) . '</p>';
			echo '<p>substr( "abcdefg", 3, -1 ) : ' . substr( "abcdefg", 3, -1 ) . '</p>';
			echo '<p>substr( "abcdefg", 3, -2 ) : ' . substr( "abcdefg", 3, -2 ) . '</p>';
			echo '<p>substr( "abcdefg", -3 ) : ' . substr( "abcdefg", -3 ) . '</p>';
			echo '<p>substr( "abcdefg", -3, 2 ) : ' . substr( "abcdefg", -3, 2 ) . '</p>';
			echo '<p>substr( "abcdefg", -3, 1 ) : ' . substr( "abcdefg", -3, 1 ) . '</p>';
			echo '<p>substr( "abcdefg", -3, -1 ) : ' . substr( "abcdefg", -3, -1 ) . '</p>';
			echo '<p>substr( "abcdefg", -3, -2 ) : ' . substr( "abcdefg", -3, -2 ) . '</p>';
		?>
	</body>
</html>

같은 카테고리의 다른 글
PHP / 반복문 / while, do-while, for

PHP / 반복문 / while, do-while, for

while 문법 while ( condition ) {   statement; } condition을 만족할 때까지 중괄호 안에 있는 statement를 실행합니다. 중괄호 대신 콜론(:)과 endwhile을 사용할 수도 있습니다. while ( condition ) :   statement; endwhile; 예제 <?php   $i = 1; // 초기값 설정   while ( $i < 10 ) ...

PHP / 회원 관리 / 비밀번호 변경 페이지

PHP / 회원 관리 / 비밀번호 변경 페이지

change-password.php $_SESSION의 값으로 로그인 여부를 판단합니다. 로그인 상태가 아니라면 로그인 페이지로 이동합니다. 로그인 상태라면 $current_password의 값으로 새 비밀번호를 입력했는지 확인합니다. 새 비밀번호를 입력했다면 현재 비밀번호가 맞는지 확인합니다. 맞지 않다면 '현재 비밀번호가 틀렸습니다.'를 출력합니다. 현재 비밀번호가 맞다면 새로 입력한 비밀번호 두 개가 일치하는지 확인합니다.일치하지 않는다면 '새 비밀번호가 일치하지 않습니다.'를 출력합니다. 새 비밀번호 두 개가 ...

PHP / 연산자 / 할당 연산자

PHP / 연산자 / 할당 연산자

PHP의 할당 연산자는 =이다. 등호 오른쪽을 등호 왼쪽에 저장한다.('같다'를 표현할 때는 ==를 사용한다.) 변수 a에 10을 할당한다. $a = 10; 여러 번 할당하면 마지막에 할당된 것이 값이 된다. 즉 변수 a의 값은 20이다. $a = 10; $a = 20; 기존 값을 사용할 수 있다. 변수 a의 값은 20이다. $a = 10; $a = $a + 10;

PHP / 함수 / var_dump() / 변수의 정보를 출력하는 함수

PHP / 함수 / var_dump() / 변수의 정보를 출력하는 함수

개요 var_dump는 변수의 정보를 출력하는 함수입니다. PHP 4 이상에서 사용할 수 있습니다. 문법 var_dump( $var1, $var2, ... ); 결과의 해석은 다음과 같습니다. int(1) : 정수이고, 값은 1입니다. float(1.1) : 실수이고, 값은 1.1입니다. string(5) "hello" : 5개의 문자로 이루어진 문자열이고, 값은 hello입니다. array(2) { => float(1.1) } : 2개의 값을 가진 배열이고, 첫번째 값은 정수 1, 두번째 값은 ...

PHP / 문법

PHP / 문법

HTML 문서에 PHP 코드 넣기 PHP 코드는 HTML 문서에 넣는다. 이를 실행하기 위해서는 어느 부분이 PHP 코드인지 알려줘야 한다. PHP 코드 부분을 명시하기 위한 방법은 여러 가지가 있는데, 보통 을 사용한다. 방법 1 <?php와 ?> 사이에 PHP 코드를 넣는다. <?php // PHP Code ?> 방법 2 script 태그 사이에 PHP 코드를 넣는다. <script language="php"> // ...

PHP / 함수 / md5() / 문자열에서 md5 해시값 생성하는 함수

PHP / 함수 / md5() / 문자열에서 md5 해시값 생성하는 함수

개요 md5()는 문자열에서 md5 해시값을 생성하는 함수입니다. 해시값에서 원래의 문자열을 만들지는 못합니다. 문자열이 같다면 같은 해시값을 만드므로, 비밀번호를 암호화하여 저장하는 용도로는 맞지 않습니다. It is not recommended to use this function to secure passwords, due to the fast nature of this hashing algorithm. 문법 md5( string $str ) str : ...

PHP / $_GET, $_POST - 양식(form)으로 전송된 데이터 받기

PHP / $_GET, $_POST - 양식(form)으로 전송된 데이터 받기

GET과 POST HTML의 form을 이용하여 값을 전송하는 방식은 get과 post 두 가지가 있습니다. PHP로 그 값을 받아서 사용하는 방법을 알아봅니다. GET 방식으로 전송한 경우 다음은 GET 방식으로 값을 전송하는 간단한 예제입니다. form.php <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>HTML</title> <style> * { ...

PHP / 함수 / isset() - 설정된 변수인지 확인하는 함수

PHP / 함수 / isset() - 설정된 변수인지 확인하는 함수

개요 isset으로 변수가 설정되었는지 확인할 수 있습니다. PHP 4 이상에서 사용할 수 있습니다. 문법 isset( $var ); $var가 설정되었는지 확인하고, 설정되었으면 TRUE, 설정되지 않았으면 FALSE를 반환합니다. isset( $var1, $var2, ... ); $var1, $var2, …이 설정되었는지 확인합니다. 모든 변수가 설정되었으면 TRUE, 그렇지 않다면 FALSE를 반환합니다. 예제 <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>Coding ...

PHP / 다른 페이지로 리디렉션(Redirection)하는 방법

PHP / 다른 페이지로 리디렉션(Redirection)하는 방법

여러 가지 이유로 a.php로 접속했을 때 b.php로 자동 이동하게 만들어야 할 경우가 있습니다. 이를 보통 리디렉션(Redirection)이라고 하는데, PHP에서는 다음과 같은 코드로 리디렉션을 구현할 수 있습니다. 다음과 같은 코드가 있는 페이지에 접속하면 https://www.codingfactory.net로 이동합니다. header( 'Location: https://www.codingfactory.net' ); 일정 시간 지난 후에 이동시키고 싶다면 sleep() 함수를 이용하세요. 다음은 5초 후 이동시키는 코드입니다. sleep( 5 ); header( ...

PHP / Ubuntu / Apache / HTML 확장자에도 PHP 코드 인식되도록 설정하는 방법

PHP / Ubuntu / Apache / HTML 확장자에도 PHP 코드 인식되도록 설정하는 방법

Ubuntu에 Apache로 웹서버를 만들고 PHP를 사용할 수 있게 만든 경우, 기본적으로 확장자가 php인 경우에만 PHP 코드를 인식합니다. 만약 확장자가 html일 때로 PHP 코드가 인식되도록 하고 싶다면, Apache 설정을 바꿔줘야 합니다. /etc/apache2/mods-enabled/mime.conf 파일을 엽니다. 다음 코드를 추가합니다. AddType application/x-httpd-php .html 확장자가 htm인 경우에도 PHP를 인식하도록 하고 싶다면 다음처럼 합니다. AddType application/x-httpd-php .html .htm 웹서버를 다시 로드합니다. service apache2 ...