'Language/PHP'에 해당되는 글 85건

  1. 2010.05.11 print_r
  2. 2010.05.11 Foreach 문을 이용한 배열출력
  3. 2010.05.11 array 배열 일차원과 다차원
  4. 2010.05.10 php 환경 변수들
  5. 2010.05.10 ereg,eregi, 정규표현식 예제
  6. 2010.05.10 [정규표현식]ereg /eregi /ereg_replace /eregi_replace 1
  7. 2010.05.07 php 내부 함수
  8. 2010.04.30 시간 함수
  9. 2010.04.30 date() 함수 예제
  10. 2010.04.30 date() 함수 포맷

print_r

Language/PHP 2010. 5. 11. 18:24

print_r

(PHP 4 , PHP 5)

print_r --  변수에 관한 정보를 사람이 읽기 좋게 출력합니다.

설명

bool print_r ( mixed expression [, bool return])

참고: return 인자는 PHP 4.3.0에서 추가되었습니다.

print_r()은 변수에 대한 정보를 사람이 읽을 수 있는 방법으로 표시합니다. string, integer, float이 주어지면, 값을 그대로 출력합니다. array가 주어지면, 키와 요소를 알아볼 수 있는 형태로 표현합니다. object에 대해서도 비슷하게 표현합니다. var_dump()와는 달리, print_r()var_export()는 PHP 5에서 protected 및 private 속성도 보여줍니다.

print_r()은 배열 포인터를 마지막으로 이동합니다. 처음으로 되돌리려면 reset()을 사용하십시오.

<pre>
<?php
   $a
= array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'
));
  
print_r ($a
);
?>
</pre>

출력은:

<pre>
Array
(
    [a] => apple
    [b] => banana
    [c] => Array
        (
            [0] => x
            [1] => y
            [2] => z
        )
)
</pre>

print_r()의 출력을 가져오려면, return 인자를 사용하십시오. 이 인자를 TRUE로 설정하면, print_r()은 출력을 표시(기본값)하는 대신, 반환값으로 내보냅니다.

예 1. return 인자 예제

<?php
   $b
= array ('m' => 'monkey', 'foo' => 'bar', 'x' => array ('x', 'y', 'z'
));
  
$results = print_r($b, true);
//$results가 print_r의 출력을 가집니다.
?>

참고: 4.3.0 이전 버전의 PHP에서 print_r()의 출력을 가져오려면, 출력 제어 함수를 이용하십시오.

참고: PHP 4.0.4 이전에는, 주어진 array이나 object가 자기 자신에의 직접적/비직접적 참조를 포함하고 있으면 print_r()은 무한 루프에 빠졌습니다. 예를 들면, print_r($GLOBALS)가 해당합니다. $GLOBALS는 자기 자신에의 참조를 포함하고 있는 전역 변수이기 때문입니다.

[출처] print_r|작성자 아슈크림

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

addslashes / stripslashes  (0) 2010.05.18
array_unshift, array_push  (0) 2010.05.12
Foreach 문을 이용한 배열출력  (0) 2010.05.11
array 배열 일차원과 다차원  (0) 2010.05.11
php 환경 변수들  (0) 2010.05.10
:

Foreach 문을 이용한 배열출력

Language/PHP 2010. 5. 11. 18:14

'foreach'문을 이용하지 않더라도 'for'문이나 'while'문을 이용해 출력 할 수 도있지만  'foreach'문을 이용해서 좀더 편리하게 배열변수를 출력해 보자.
'foreach'문은 'while'문처럼 원소의 개수만큼 문장을 반복 실행하게된다.

*  인덱싱배열 출력 *
$members = array("홍길동","임꺽정","허준");
foreach($members as $name){    //배열의 값을 foreach문을 이용해 출력
    echo "이름: ".$name."<br>";
}
- $members 값을 순차적으로 출력 한다.

* 연관배열 출력 *
$score = array("홍길동"=>93,"임꺽정"=>90,"허준"=>88);
foreach($score as $name=>$result){    //연관배열의 키와 값출력하기
    echo $name.": ".$result."<br>";
}
- 연관배열 $score 로부터 하나씩 각 원소의 키와 값을 가져와 원소의 키는 변수 $name에 저장하고 원소의 값은 변수 $reault 에 각각 저장하여 이들값을 출력한다.

출처 - http://kyoe.egloos.com/859494

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

array_unshift, array_push  (0) 2010.05.12
print_r  (0) 2010.05.11
array 배열 일차원과 다차원  (0) 2010.05.11
php 환경 변수들  (0) 2010.05.10
ereg,eregi, 정규표현식 예제  (0) 2010.05.10
:

array 배열 일차원과 다차원

Language/PHP 2010. 5. 11. 18:12

array 타입은 배열을 다루기 위한 변수형으로써 PHP에서는 배열을 키(key)와 값(value)의 쌍으로 구성된 원소의 집합체로 이룬다.

*인덱싱배열과 연관 배열*
PHP 배열에서 원소의 키는 정수형의 숫자 또는 문자열이어야 하며 원소의 값은 어떤 변수형의 값이든 될수 있다.

- 일차원 인덱싱배열
$school = array("1반","2반","3반");
echo $school[1].'<br>';

- 일차원 연관배열
$family = array("부"=>'아버지',"모"=>'어머니');
echo $family["부"];

- 인덱싱배열과 인덱싱배열을 같이 써보자.
  숫자로 된 키를 갖는 원소와 문자열로 된 키를 갖는 원소가 함께존재하는배열도가능하다.
$fruit = array('사과',"원숭이"=>'바나나',"제주도"=>'귤','감');
echo $fruit[0].'<br>';
echo $fruit["원숭이"].'<br>';
echo $fruit[1];
-처음 '사과'는 키를 지정해주지 않았으므로 $fruit[0]이란 값으로 참조할수있다.
-바나나는 문자열키 '원숭이'로 참조한다.
-마지막 4번째 원소인 '감'역시 키를 지정해주지 않았다 그 사이에 문자열키가
 있지만 이럴땐 숫자로된 가장큰 정수형키보다 1큰값을 키로 갖는다.

* 다차원 배열 *
- 배열안에 또다른배열이 중첩적으로 있는것을 다차원 배열이라 한다.
$member = array(array("이름"=>'홍길동',"나이"=>24,"성별"=>"남"),
                        array("이름"=>'성춘향',"나이"=>20,"성별"=>"여"));
echo $member[0]["이름"].'<br>';      
echo $member[1]["이름"];
- 배열속의 첫번째배열은 키를 지정해주지않았으므로 0값을 갖는다.

- 배열안의 배열을 문자열키로 참조할수있다.(결과값은 위와 동일하다.)
$member = array("남자주인공"=>array("이름"=>'홍길동',"나이"=>24,"성별"=>"남"),
                        "여자주인공"=>array("이름"=>'성춘향',"나이"=>20,"성별"=>"여"));
echo $member["남자주인공"]["이름"].'<br>';    //첫번째 배열을 문자열키 "남자주인공"으로
                                                                   //했으므로 숫자키대신 문자열키를 써준다.
echo $member["여자주인공"]["이름"];



출처 - http://kyoe.egloos.com/855886

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

print_r  (0) 2010.05.11
Foreach 문을 이용한 배열출력  (0) 2010.05.11
php 환경 변수들  (0) 2010.05.10
ereg,eregi, 정규표현식 예제  (0) 2010.05.10
[정규표현식]ereg /eregi /ereg_replace /eregi_replace  (1) 2010.05.10
:

php 환경 변수들

Language/PHP 2010. 5. 10. 14:07

1. $_SERVER
서버와 관련된 기본 환경 변수의 배열
$_SERVER[알고싶은값] 의 형태로 사용한다.

알고 싶은 값에 들어가는 요소들에 따른 값
$_SERVER[SERVER_NAME] : 현재 호스트의 이름
$_SERVER[DOCUMENT_ROOT] : 현재 파일이 실행중인 document root 디렉토리 (웹으로 접속되는 루트)
$_SERVER[PHP_SELF] : document root 를 기준으로 한 현재 실행 파일 이름
$_SERVER[SCRIPT_FILENAME] : 현재 실행 파일의 절대경로
$_SERVER[SCRIPT_NAME] : 현재 실행 파일의 이름
$_SERVER[REQUEST_URI] : 현재 실행 파일을 사용한 URI (get 파라미터를 포함한다.)
$_SERVER[HTTP_REFERER] : 현재실행파일을 호출한 곳의 주소 (해당 파일로 링크가 연결된 주소)
$_SERVER[REMOTE_ADDR] : 접속한 사용자의 IP

2. $_GET, $_POST
$_GET
get 방식으로 넘어온 변수들
$_POST
post 방식으로 넘어온 변수들

3. $_SESSION, $_COOKIE
$_SESSION
세션에 저장된 변수들
$_COOKIE
쿠키에 저장된 변수들

4. $_FILES
<input type="file" name="filename"> 을 통해 업로드된 파일의 정보

$_FILES['filename']['name'] : 파일명
$_FILES['filename']['type'] : 파일 타입
$_FILES['filename']['tmp_name'] : 업로드되어 임시 저장된 파일의 절대경로
$_FILES['filename']['error'] : 업로드 에러 코드
$_FILES['filename']['size'] : 파일 사이즈(bytes)

이외에도 많은 환경 변수들이 있으나 많이 사용하는 것들만 소개하였습니다.

아래 소스 처럼 $GLOBALS 를 출력하면 모든 환경변수들을 볼 수 있습니다.

<pre>
<?
print_r($GLOBALS);
?>
</pre>
[22_1.php 소스]

모든 환경변수들이 어떤 값을 가지고 있는지 잘 파악하신다면 프로그래밍시에 많은 도움이 될것입니다.

그럼 다음 시간부터 데이터 베이스인 MySql 을 배워보도록 하겠습니다.

MySql 의 간단한 사용법을 5~6시간정도 배우고나서는 PHP와 MySql 을 같이 사용하는 강좌로 이어집니다.


출처 - http://handsome.pe.kr/44

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

Foreach 문을 이용한 배열출력  (0) 2010.05.11
array 배열 일차원과 다차원  (0) 2010.05.11
ereg,eregi, 정규표현식 예제  (0) 2010.05.10
[정규표현식]ereg /eregi /ereg_replace /eregi_replace  (1) 2010.05.10
php 내부 함수  (0) 2010.05.07
:

ereg,eregi, 정규표현식 예제

Language/PHP 2010. 5. 10. 10:56

<?
$text = "Small";
$result = ereg("S",$text);

echo "대상문자열 Small:<br>";

$result1 = ereg("s",$text);
echo "s 문자가 있는지 검사:".$result1."<br>"; //검색한 문자(열)가 있는 경우, 1을 반환하고, 없으면 아무값도 반환하지 않는다.

echo "S 문자가 있는지 검사:".$result."<br>"; //검색한 문자(열)가 있는 경우, 1을 반환하고, 없으면 아무값도 반환하지 않는다.

$result2 = ereg("A",$text);
echo "A 문자가 있는지 검사:".$result2."<br>";

echo "ereg 함수의 경우, 대소문자를 구별함. eregi 함수를 이용해 대소문자 구별없이 확인하기<br>";

$result3 = eregi("s",$text);
echo "s 문자가 있는지 검사:".$result3."<br>"; //eregi 를 이용해 대소문자 구별없이 검사
?>

<br>
특수문자들이 정규 표현식에서 어떻게 사용하는지 보기<br>
--------------
사용예제  내용
[abc]     a,b,c 로 이루어진 문자열
[a-c]     a 에서 c 까지의 문자로 이루어진 문자열
[a-z]     a 에서 z 까지의 문자로 이루어진 문자열
[A-Z]     대문자 A 에서 Z 까지의 문자로 이루어진 문자열
[a-zA-Z]  소문자 a 에서 z 까지, 대문자 A 에서 Z 까지의 문자로 이루어진 문자열
[0-9]     0 에서 9 까지의 숫자(문자?) 로 이루어진 문자열
[!@#_0-9] !,@,#,_ 와 0 에서 9 까지의 문자로만 이루어진 문자열
-------------
<br>

바로 앞 문자열의 개수를 지정하는 중괄호 {}
중괄호는({}) 는 바로 앞의 문자나 문자열의 개수를 지정해 주는 특수문자로, 사용 형식은 다음과 같다.

<br>
--------------
사용예제  내용
a{2}b     aab 를 가진 문자열을 사용할 수 있다. 즉 (2) 는 {} 앞에 있는 문자 a 의 개수가 2개인 것을 의미
a{2,}b    a 의 개수가 최소 2개 이상인 문자열을 의미. aab, aaab, aaaab 모두 사용할 수 있다.
--------------
<br>

시작과 끝을 알리는 ^,$
^,$ 는 문자열의 시작과 끝을 알리는 특수문자이다.
만약 abc 라는 문자열이 있으면 이 문자열은 a 로 시작하여 c 로 끝난다.
이때 정규 표현식에서 a 부터 검사하라는 의미로 a 앞에 문자열의 시작을 알리는 ^ 를,
c 의 끝에 문자열의 끝을 알리는 $ 를 붙여서 정규 표현식을 시작한다.
^,$ 를 표로 정리하면 다음과 같다.
<br>
---------------
사용예제  내용
^abc      a 에서부터 문자가 시작되는 것을 알린다.
abc$      c 가 문자열의 끝임을 알린다.
---------------

<br>
문자열 사용 막기:
사용할 수 있는 문자열을 지정하는 정규 표현식의 문자는 [] 이다.
이와 반대로 특정 문자열을 사용할 수 없도록 지정하고 싶다면, 지정하는 대괄호 [] 사이에 삿갓(^) 표시를 입력하면 된다.
예를 들어 [^123] 과 같이 사용하면 1,2,3 숫자는 문자열로 사용할 수 없다.

<br>

<br>

<?
$text = "test1234";
$result = ereg("^[a-z]{4}[0-9]{4}$",$text);
echo $result."<br>"; // 1 출력
/*
[a-z]{4} 의 의미는, 위의 문자가 알파벳 a 에서 z 까지 4개의 문자로 이루어진 것인지 검사하는 양식이다.
test 는 소문자 a 에서 z 까지 4개의 알파벳 문자로 이루어진 것이고, 1234 는 0 에서 9 까지의 숫자중에서 4개로 이루어진 값이므로,
True 인 1 을 반환한다.
*/
?>

<br><br>

바로 앞 문자열의 반복을 의미하는 *,+,? 문자
*,+,? 문자들은 해당 문자의 바로 앞 문자를 의미하며, 그 문자가 하나 이상이라는 것을 의미한다.
이 세 개의 문자열은 비슷한 정의를 가지고 있지만, 실제 사용하는 데에는 약간의 차이를 갖는다.
다음은 이 세 가지 특수문자열을 정의하고 실제 사용하는 예를 나타낸 표이다.
<br>
--------------------------------------
사용예제 결과값                  내용
a*b      b,ab,aab,aaab,aaaab...  b 앞에 a 가 없거나 하나 이상 존재하는 모든 문자열
a+b      ab,aab,aaab,aaaab...    b 앞에 a 가 최소한 하나 이상은 존재하는 모든 문자열
ab?c     abc, ac                 a 와 c 사이에 b 가 하나 있거나 혹은 없는 문자열
--------------------------------------
<br>

정규 표현식에서 특수문자를 사용하기 위한 역슬래시(\)
정규 표현식에서 입력받은 문자열의 타당성을 검사하기 위한 특수문자가 아니라,
실제 사용해야 할 특수문자가 있을 때는 그 문자 앞에 역슬래시(\)로 해당 문자열을 이스케이프해야 한다.
특수문자를 이스케이프 한다는 이유는, 우리가 이메일이나 홈페이지 주소 등을 정규 표현식으로 검사할 때
실제 'small@small.co.kr' 와 같이 이메일 주소에 사용하는 특수문자 '.' 는 그대로 살려야 하기 때문이다.
<br>

정규 표현식 특수문자를 이용하여 이메일 주소 체크하기
<br>
$ereg = "^[_0-9a-zA-Z]+(\.[_0-9a-zA-Z-]+)*@[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)+$";
<br>
예시 이메일주소)
small@small.co.kr
<br>

맨앞의 사용자 계정은 영문 소문자와 대문자, 숫자 그리고 음수 기호(-), 언더바(_), 점(.)과 같은
특수문자의 조합으로 구성되므로, 다음과 같은 정규 표현식을 작성할 수 있다.
<br>
^[_0-9a-zA-Z-]
<br>
정규 표현식에서 ^ 문자는 문자열의 시작을 알리는 것이다.
처음 문자열인 사용자 계정 이름의 시작을 0 에서 9 까지의 숫자나 소문자 a 에서 소문자 z, 대문자 A 에서 대문자 Z 까지 사용하게 지정.
그런데, 사용자 계정에서
.small@small.co.kr 이나 small.@small.co.kr 처럼 사용자 계정의 이름을 점(.) 으로 시작하거나 끝낼수는 없으므로,
아래의 하나의 패턴을 더 추가한다.
<br>
^[_0-9a-zA-Z-]+(\.[_0-9a-zA-Z-]+)*
<br>
여기서 마지막 문자열 * 는 바로 앞에 있는 괄호의 반복 () 을 뜻한다.
따라서, small, small.co, small.co.kr 등의 값들이 모두 참이 된다.
하지만, 실제 이런 사용자 계정은 없으므로,
입력한 사용자 계정 이름을 가져오고 이메일 계정을 의미하는 @ 를 붙여준다.
<br>
다시 이메일 주소의 서버 이름의 체크 정규 표현식을 만든다.
사용자 계정 이름을 검사하는 정규 표현식과 서버 이름 체크의 정규 표현식이 거의 비슷하므로,
다음과 같이 앞부분을 복사하여 하나 더 만들고, 서버 이름에는 언더바(_) 가 업으므로, 언더바(_) 를 지운다.
또, 서버 이름을 체크하는 정규 표현식이 끝나면 더 이상 이메일 주소가 없기 때문에 맨 마지막에 문자열의 끝을 알려주는 $ 문자를 입력한다.
<br>
^[_0-9a-zA-Z-]+(\.0-9a-zA-Z-]+*@(0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)+@
<br>
이제 정규 표현식과 eregi 함수만으로 이메일 주소의 타당성을 검사할수 있다.
<br>
표현식에서 () 는 그 부분들을 묶어주는 역할을 하는 듯 하다(일반 연산에서와 같은 방식으로)
단, ()* 로 사용하면,() 안의 내용을 반복 한다는 뜻.
<br><br>
<?
$ereg = "^[_0-9a-zA-Z-]+(\.[_0-9a-zA-Z-]+)*@[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)+$";

$email = ".asdf.ae@asdf.co.kr";

$result = eregi($ereg,$email);
if($result==1){
  echo "입력하신 이메일 주소 $email 는 정상적인 이메일 주소입니다";
}else{
  echo "$email 는 정규 표현식에 어긋나는 이메일 주소 입니다";
}
?>
<br>
정규식에 일치하면 1 을 반환. 아니면 반환값 없음.
<br>
위의 이메일 주소가 정상적이라고 출력됨(정규 표현식 불완전)

출처 - http://fendee.egloos.com/1766078

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

array 배열 일차원과 다차원  (0) 2010.05.11
php 환경 변수들  (0) 2010.05.10
[정규표현식]ereg /eregi /ereg_replace /eregi_replace  (1) 2010.05.10
php 내부 함수  (0) 2010.05.07
시간 함수  (0) 2010.04.30
:

[정규표현식]ereg /eregi /ereg_replace /eregi_replace

Language/PHP 2010. 5. 10. 10:55

 

PHP는 POSIX와 Perl이라는 두 가지 스타일 정규표현식을 지원한다.(POSIX가 기본)

POSIX가 배우기 쉽고 빠르지만 이진적으로 안전하지 않다고 한다.

POSIX를 기준으로 정리 들어가 보자.

 

1. 문자집합과 클래스

  '.'문자 : 줄바꿈문자(\n)를 제외한 모든문자를 대신할 수 있다.

    ex) .at     // cat, sat, mat 등과 같은 셈

 

  문자클래스([]) : []안의 문자들을 문자클래스라 한다.

    ex) [aeiou] //모든 모음(aeiou중의 한글자)이라는 의미

 

  범위 표현(-) : 범위를 사용하기 위한것으로 문자사이에 '-'를 사용

    ex) [a-zA-Z]  // 모든 대소문자 중의 한글자

 

  제외(^) : []안에서 쓰일 때 'not'의 뜻으로 제외하고자 할때 사용

    ex) [^a-z] // 소문자를 제외

          ^[a-z] // 소문자로 시작하는 것을 가리킴

 

  문자클래스

    - [[:alnum:]] : 알파벳 문자, 숫자

    - [[:alpha:]] : 알파벳 문자

    - [[:lower:]] : 소문자

    - [[:upper:]] : 대문자

    - [[:digit:]] : 십진법의 숫자

    - [[:xdigit:]] : 16진법의 숫자, 문자

    - [[:punct:]] : 구두점

    - [[:blank:]] : 탭, 스페이스

    - [[:space:]] : 공백 문자들

    - [[:cntrl:]] : 컨트롤 문자들

    - [[:print:]] : 모든 출력 가능한 문자들

    - [[:graph:]] : 스페이스를 제외한 모든 출력 가능 문자

 

  반복

    '+' : 앞글자가 한번이상 반복될 수 있음을 뜻한다.

    '*' : 앞글자가 0번이상 반복될 수 있음을 뜻한다.

 

  부분표현식

    () : ()안의 모든 것을 나타낸다.

    ex) (very )*large //'large', 'very large', 'very very large'...등과 일치

 

  반복의 횟수 제한하기

    {} : {}안에 숫자를 넣어서 반복횟수 제한,

    ex) (very){3} //3번 반복

          (very){2,4} // 2~4번 사이로 반복

          (very){2, } // 적어도 2번이상 반복

 

  문자열의 시작과 끝 고정하기

   '^' : 시작부분에 사용되며, 문자열 앞부분에 이 표현이 있어야 함을 의미

    ex) ^bob // bob로 시작하는 문자열과 일치

    '$' : 뒷부분에 사용되고, 이표현으로 문자열이 끝나야 함을 의미

    ex) com$ //com으로 끝나는 문자열과 일치

           ^[a-z]$ // a-z까지의 모든글자(글자 하나)와 일치

 

  특수문자 사용

    ',', '{', '$'등의 특수문자를 사용할때에는 이스케이프 문자(역슬래시)를 사용하면 된다.

    ex) \, or \{ or \$  // , { $ 문자의 사용

 

  선택하기

    '|' : 여러 문자열중 선택하기 위해

    ex) com | edu | net // com이나 edu또는 net과 일치하는 문자열

    //--- split()를 이용한 이메일 분리 ---//

    $address = 'username@mail.com';

    $arr = split('\. | @', $address);

    while( list($key, $value) = each($arr) ) {

      echo $value;

    }

 

2. ereg() 함수 - 문자열중에 찾는값이 있으면 true를 반환 아니면 false를 반환한다.

  > ereg("찾는값", "문자열", array [matches])

  3번째 인자를 사용할 경우에는 값을 찾아낸 문자열을 [matches]에 저장한다.

  // 근데 배열저장값이 찾는값하고 왜 동일하지..? 난 문자열이 나오는걸 기대했었다...

 

3. eregi() 함수 - ereg와 같으나 대소문자를 구분한다.

  > eregi("찾는값", "문자열", array [matches])

 

4. ereg_replace() 함수 - 문자열중 찾는값이 나오면 치환값으로 치환한다.

  > ereg_replace("찾는값", "치환값", "문자열")

 

5. eregi_replace() 함수 - ereg_replace와 같으나 대소문자를 구분한다.

  > eregi_replace("찾는값", "치환값", "문자열")

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

php 환경 변수들  (0) 2010.05.10
ereg,eregi, 정규표현식 예제  (0) 2010.05.10
php 내부 함수  (0) 2010.05.07
시간 함수  (0) 2010.04.30
date() 함수 예제  (0) 2010.04.30
:

php 내부 함수

Language/PHP 2010. 5. 7. 09:45

날짜 및 시간관련 함수
checkdate 주어진 날짜 및 시간이 타당한지를 검사한다 - 타당하면 true 반환
정의 : int checkdate(int month, int day, int year);
date 주어진 옵션에 따른 포맷으로 시간이나 날짜를 출력한다
정의 : string date(string format, int timestamp);
strftime 해당 locale을 기준으로 주어진 옵션에 따른 포맷으로 시간이나 날짜를 출력한다
정의 : string strftime(string format, int timestamp);
mktime 특정 날짜 및 시간에 해당하는 유닉스 시간(초단위)을 얻는다
정의 : int mktime(int hour, int minute, int month, int day, int year);
time 현재의 시간에 해당하는 유닉스 시간을 얻는다 - 현재시간의 timestamp 값을 반환
정의 : int time(void);
getdate 날짜 및 시간 정보를 연관배열의 형태로 얻는다
정의 : array getdate(int timestamp); 연관배열 참조키
date() 함수 호출시 지정할 수 있는 출력포맷
출력형식 기능
Y 연도를 네 자리수로 출력한다 1999
y 연도를 두 자리수로 출력한다 99
M 월을 세 자리 영문자로 출력한다 Jan
m 월을 두 자리수로 출력한다 01-12
F 월을 완전한 영문자로 출력한다 January
d 일자를 두 자리수로 출력한다 01-31
j 일자를 출력하는데 10일 이하는 한 자리수로 출력한다 1-9, 10-31
l 완전한 영문자로 요일을 출력한다 Friday
w 요일을 한자리 숫자로 출력한다 일(0),월(1), ~ ,토(6)
D 세자리수 영문자로 요일을 출력한다 Fri
H 시간을 24시간제로 출력한다 23
h 시간을 12시간제(오전,오후)로 출력한다 11
a am이나 pm으로 출력한다  
A AM이나 PM으로 출력한다  
i 분을 출력한다  
s 초를 출력한다  
z 그 해의 몇 번째 일수인지를 출력한다.
이 값은 0부터 시작하므로 윤년이 아닌 경우의 12월 31일은 364로 출력한다
 
문자열 처리 함수
addslashes 작은 따옴표(')와 큰 따옴표("), 역슬래쉬(\)와 같은 특정문자앞에 역슬래시(\) 문자를 붙인다
정의 : string addslashes(string str);
stripslashes addslashes() 함수를 통해 역슬래쉬 처리가 된 문자를 원 상태로 되돌린다
정의 : string stripslashes(string str);
htmlspecialchars HTML 코드를 문자열 그대로 출력한다
- 게시판이나 방명록에 HTML 코드를 허용하지 않고자 할 경우에
form을 통해 넘어오는 문자열을 htmlspecialchars() 함수로 받아 처리하면 된다
정의 : string htmlspecialchars(string string);
nl2br 문자열의 개행문자를 < BR> 태그로 치환한다
- 게시판이나 방명록에서 방문자가 입력한 게시물을 볼때..
개행문자(enter)를 입력한 경우 그대로 개행되어 보이도록 할때 사용
정의 : string nl2br(string string);
echo 인자로 전해준 문자열을 출력한다
정의 : echo(string arg1, string[argn]...);
sprintf 문자열을 지정해준 포맷으로 바꾸어 반환한다
정의 : sprintf(string format, mixed[args]...);
printf 문자열을 지정해준 포맷으로 출력한다
정의 : int printf(string format, mixed[args]...);
explode 문자열을 구분자로 나누어 배열에 저장한다
정의 : array explode(string separator, string string);
implode 배열의 각 원소를 구분자로 연결한 전체 문자열을 반환한다
정의 : string implode(array pieces, string glue);
join implode 함수와 동일한 기능을 수행한다
정의 : string join(array pieces, string glue);
split 문자열을 정규표현식에 의한 구분자로 나누어 배열에 저장한다
- 구분자로 정규표현식을 사용하기 때문에 explode() 함수보다 정교한 분리가 가능하다
정의 : array split(string pattern, string string, int[limit]);
strcmp 두개의 문자열을 비교한다
- 두 문자열이 일치하면 0을 그렇지 않으면 0이 아닌 값을 반환
정의 : int strcmp(string str1, string str2);
substr 문자열의 일부를 추출한다
정의 : string substr(string string, int start, int[length]);
strchr 검색대상 문자열에서 찾고자하는 문자열이 처음으로 나타나는 위치 이후의 문자열을 반환한다
- needle로 주어진 문자열을 찾지 못하면 false를 반환
정의 : string strchr(string haystack, string needle);
strrchr 검색대상 문자열에서 찾고자하는 문자열이 마지막으로 나타나는 위치 이후의 문자열을 반환한다
정의 : string strrchr(string haystack, string needle);
strpos 검색대상 문자열에서 찾고자하는 문자열이 처음으로 나타나는 위치를 숫자로 반환한다
정의 : int strpos(string haystack, string needle, int[offset]);
strrpos 검색대상 문자열에서 찾고자하는 문자가 마지막으로 나타나는 위치를 숫자로 반환한다
정의 : int strrpos(string haystack, char needle);
strlen 문자열의 길이(byte)를 반환한다. 한글은 2bytes로 계산한다
정의 : int strlen(string str);
strtolower 알파벳으로 된 문자열을 소문자로 변환한다
정의 : string strtolower(string str);
strtoupper 알파벳으로 된 문자열을 대문자로 변환한다
정의 : string strtoupper(string string);
ucfirst 알파벳 문자열의 첫글자를 대문자로 변환한다
정의 : string ucfirst(string str);
ucwords 알파벳 문자열내 모든 단어의 첫글자를 대문자로 변환한다
정의 : string ucwords(string str);
strrev 문자열의 순서를 정반대로 바꾼다
정의 : string strrev(string string);
strtr 대상 문자열의 각 문자를 검색하여 지정한 문자로 각각 치환한다
정의 : string strtr(string str, string from, string to);
str_replace 문자열을 검색하여 원하는 문자열을 다른 문자열로 바꾼다
정의 : string str_replace(string needle, string str, string haystack);
chop 문자열의 뒷부분에 있는 공백문자를 제거한다
정의 : string chop(string str);
trim 문자열 앞 부분과 뒷 부분에 있는 공백 문자를 제거한다
정의 : string trim(string str);
quotemeta 메타 문자 앞에 역슬래쉬 문자를 덧붙인다
정의 : int quotemeta(string str);
ord 문자의 ASCII 코드값을 반환한다
정의 : int ord(string string);
chr 특정 ASCII 코드값을 갖는 문자를 반환한다
정의 : string chr(int ascii);
parse_str URL을 통해 전달되는 문자열을 파싱하여 변수를 설정한다
정의 : void parse_str(string str);
파일 처리 함수
fopen 지정한 파일을 연다
- 파일포인터를 반환한다
정의 : int fopen(string filename, string mode);
fclose fopen()으로 연 파일을 닫는다
- 파일닫기가 정상적으로 수행되었으면 true를, 실패했으면 false 반환
정의 : int fclose(int fp);
fread 파일에서 특정 byte수만큼을 읽어들여 문자열로 반환한다
정의 : string fread(int fp, int length);
fwrite 파일에 특정 byte수만큼을 쓴다
정의 : int fwrite(int fp, string string, int[length]);
feof 파일 포인터의 위치가 파일의 끝인지를 검사한다
- 파일 포인터가 파일의 끝(EOF)이거나 에러가 발생시 true를, 그렇지 않은 경우에는 false를 반환
정의 : int feof(int fp);
fgets 지정한 파일에서 개행 문자나 EOF를 만나기 전까지 특정 byte수만큼 읽어들인다
정의 : string fgets(int fp, int length);
fputs 파일에서 특정 byte수만큼을 읽어들여 문자열로 반환한다
정의 : int fputs(int fp, string str, int[length]);
fpassthru 파일 포인터가 가리키는 현재의 위치에서 파일의 끝(EOF)까지를 읽어들여 표준 출력장치로 출력한다
정의 : int fpassthru(int fp);
readfile 파일을 읽어 표준 출력장치에 출력한다
- 읽어들인 문자열의 크기를 byte수로 반환
정의 : int readfile(string filename);
fgetc 파일로부터 한 문자를 읽어들인다
정의 : string fgetc(int fp);
filesize 파일의 크기를 bytes수로 반환한다
정의 : int filesize(string filename);
file_exists 파일이 존재하는지를 검사한다
정의 : int file_exists(string filename);
is_file 정상적인 파일인지를 검사한다
정의 : bool is_file(string filename);
is_dir 디렉토리인지를 검사한다
정의 : bool is_dir(string filename);
is_link 심볼릭 링크인지를 검사한다
정의 : bool is_link(string filename);
is_executable 실행가능한 파일인지를 검사한다
정의 : bool is_executable(string filename);
is_readable 읽기 가능한 파일인지를 검사한다
정의 : bool is_readable(string filename);
is_writable 쓰기 가능한 파일인지를 검사한다
정의 : bool is_writable(string filename);
copy 파일을 복사한다
정의 : int copy(string source, string dest);
rename 파일의 이름을 바꾼다
정의 : int rename(string oldname, string newname);
unlink 파일을 삭제한다
- 제대로 수행된 경우 true를 반환
정의 : int unlink(string filename);
mkdir 디렉토리를 생성한다
정의 : int mkdir(string pathname, int mode);
rmdir 디렉토리를 삭제한다
정의 : int rmdir(string dirname);
basename 파일에 대한 경로명 중 확장자를 포함한 파일 이름만을 반환한다
정의 : string basename(string path);
dirname 파일에 대한 경로명 중 디렉토리명만을 반환한다
정의 : string dirname(string path);
file 파일의 내용을 읽어 배열로 반환한다
정의 : array file(string filename);
파일처리 함수에서 사용되는 파일모드
모드 기능
'r' 파일을 읽기 모드로 연다. 파일 포인터는 해당 파일의 처음에 위치하게 된다.
'r+' 파일을 읽기와 쓰기 모드로 연다. 파일 포인터는 해당 파일의 처음에 위치하게 된다.
'w' 파일을 쓰기 모드로 연다. 해당 파일이 이미 존재하면 덮어 씌우고 없으면 새로 생성한다. 파일 포인터는 해당 파일의 처음에 위치하게 된다.
'w+' 파일을 읽기와 쓰기 모드로 연다. 해당 파일이 이미 존재하면 덮어 씌우고 없으면 새로 생성한다. 파일 포인터는 해당 파일의 처음에 위치하게 된다.
'a' 파일을 쓰기 모드로 연다. 해당 파일이 존재하지 않으면 새로 만들며 파일의 포인터는 해당 파일의 마지막에 위치하게 된다.
'a+' 파일을 읽기 및 쓰기 모드로 연다. 해당 파일이 존재하지 않으면 새로 만들며 파일의 포인터는 해당 파일의 마지막에 위치하게 된다.
디렉토리 관련 함수
opendir 지정한 디렉토리에 대한 핸들(handle)을 얻는다
정의 : int opendir(string path);
closedir opendir() 함수로 연 디렉토리에 대한 핸들을 닫는다
정의 : void closedir(int dir_handle);
readdir 디렉토리의 파일 및 하부 디렉토리 이름을 읽어들여 목록의 형태로 반환한다
정의 : string readdir(int dir_handle);
rewinddir 디렉토리 핸들을 처음 위치로 되감는다
정의 : void rewinddir(int dir_handle);
chdir 디렉토리를 바꾼다
정의 : int chdir(string directory);
dir 디렉토리 클래스 객체를 생성한다
정의 : new dir(string directory);
URL 관련 함수
parse_url URL을 파싱한 후 각 부분을 연관 배열에 저장한다
- 파싱 후의 결과는 scheme, host, port, user, pass, path, query, fragment등의 항목으로 나뉘어 배열에 저장된다
정의 : array parse_url(string url);
urlencode URL을 통해 전달되는 query string을 인코딩한다
- 인코딩은 한글 문자처럼 '-', '_', '.'을 제외한 알파벳이 아닌 문자에 한해서 수행되며 인코딩이 되면 % 문자와 두개의 문자로 이루어진 헥사코드로 변환이 되고 공백 문자는 '+'로 변환된다
정의 : string urlencode(string str);
urldecode 인코딩된 query string을 디코딩한다
정의 : string urldecode(string str);
변수 관련 함수
gettype 변수의 변수형을 얻는다
정의 : string gettype(mixed var);
settype 변수의 변수형을 바꾼다
정의 : int settype(string var, string type);
intval 변수의 정수형 값을 반환한다
정의 : int intval(mixed var, int[base]);
doubleval!! 변수의 실수형 값을 반환한다
정의 : double doubleval!!(mixed var);
strval 변수의 문자열 값을 반환한다
정의 : string strval(mixed var);
isset 해당 변수가 존재하는지 검사한다
정의 : int isset(mixed var);
unset 더 이상 필요없는 변수를 파괴한다
정의 : int unset(mixed var);
empty 변수에 값이 할당되어 있는지 검사한다
정의 : int empty(mixed var);
is_array 변수가 배열형 변수인지 검사한다
정의 : int is_array(mixed var);
is_int,is_integer,is_long 변수가 정수형 변수인지 검사한다
정의 : int is_int(mixed var);
is_real,is_float,is_double 변수가 실수형 변수인지 검사한다
정의 : int is_real(mixed var);
is_string 변수가 문자열 변수인지 검사한다
정의 : int is_string(mixed var);
is_object 변수가 객체형 변수인지 검사한다
정의 : int is_object(mixed var);
수학연산 관련 함수
abs 변수의 절대값을 반환한다
정의 : mixed abs(mixed number);
round 변수를 반올림한 값을 반환한다
정의 : double round(double val);
ceil 부동소수형 변수 number보다 큰 정수중 최소값을 반환한다
정의 : int ceil(float number);
floor 부동소수형 변수 number보다 작은 정수중 최대값을 반환한다
정의 : int floor(float number);
pow base를 지수로 한 제곱승을 반환한다
정의 : float pow(float base, float exp);
exp e를 지수로 한 제곱승을 반환한다
정의 : float exp(float arg);
log 지수가 e인 자연로그값을 반환한다
정의 : float log(float arg);
log10 지수가 10인 상용로그값을 반환한다
정의 : float log10(float arg);
pi 3.14로 표시되는 상수 PI값을 반환한다
정의 : double pi(void);
sqrt 제곱근을 반환한다
정의 : float sqrt(float arg);
max 인자중 최대값을 반환한다
정의 : mixed max(mixed arg1, mixed arg2, mixed argn);
min 인자중 최소값을 반환한다
정의 : mixed min(mixed arg1, mixed arg2, mixed argn);
number_format 숫자를 지정한 형식에 맞게 출력한다
정의 : string number_format(float number,int decimals, string dec_point, string thousands_sep);
rand/srand 최소와 최대값 사이의 난수를 반환한다
- srand() 함수는 rand() 함수로 난수를 얻기 전에 호출해야 하는 함수이다
정의 : int rand([int min], [int max]); void srand(int seed);
sin 인자의 sin값을 반환한다
정의 : float sin(float arg);
cos 인자의 cos값을 반환한다
정의 : float cos(float arg);
tan 인자의 tan값을 반환한다
정의 : float tan(float arg);
기타 PHP 함수
getenv 환경 변수로 저장된 값을 얻는다
정의 : string getenv(string varname);
getlastmod 현재문서가 마지막으로 수정된 날짜를 반환한다
- 리턴값은 최종 수정된 시간의 유닉스 시간, 즉 timestamp 값이다
정의 : int getlastmod(void);
phpinfo 서버에 설치된 PHP에 대한 자세한 정보를 출력한다
정의 : int phpinfo(void);
mail 메일을 발송한다
정의 : bool mail(string to, string subject, string message, string additional_headers);
die 메시지를 출력하고 스크립트의 실행을 중단한다
정의 : void die(string message);
exit 스크립트의 실행을 중단한다
정의 : void exit(void);
uniqid UID를 생성한다
- 현재의 시간, 즉 스크립트 실행 시간에 기반을 둔 식별자(UID)를 생성한다.
쇼핑몰이나 회원로그인 등 세션정보가 필요할 때 사용하며,
생성된 식별자는 32개의 문자로 구성되어 있으며 실행시마다 다른 값이 생성된다.
정의 : int uniqid(string prefix);
PHP에서 참조가능한 주요 환경 변수들
환경변수 이름 기능
SERVER_SOFTWARE 웹서버의 이름과 버전
SERVER_NAME 서버의 호스트 이름 또는 IP 어드레스
GATEWAY_INTERFACE 서버의 CGI 타입과 개정 레벨을 나타낸다(예: CGI/1.1)
SERVER_PROTOCOL 서버의 프로토콜, 보통 HTTP/1.0이나 HTTP/1.1에 해당
SERVER_PORT 클라이언트 요청을 보내는 포트번호, 보통 80번 Port
REQUEST_METHOD CGI에서 데이터를 전송하는 방법으로 GET이나 POST
PATH_INFO 스크립트에 대한 경로 정보
PATH_TRANSLATED PATH_INFO 경로를 실제 물리적 경로로 표시한 것
SCRIPT_NAME 현재 실행중인 스크립트의 파일이름
QUERY_STRING GET이나 POST 방식을 통해 전달된 값을 저장
REMOTE_ADDR 스크립트 실행을 요청한 클라이언트의 IP 주소
REMOTE_HOST 스크립트 실행을 요청한 클라이언트의 호스트 이름
CONTENT_LENGTH POST 방식을 통해 전달되는 입력정보의 길이를 표시
HTTP_USER_AGENT 스크립트 실행을 요청한 브라우저의 종류 및 버전을 표시

출처- http://blog.daum.net/sobakcc/8436160

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

ereg,eregi, 정규표현식 예제  (0) 2010.05.10
[정규표현식]ereg /eregi /ereg_replace /eregi_replace  (1) 2010.05.10
시간 함수  (0) 2010.04.30
date() 함수 예제  (0) 2010.04.30
date() 함수 포맷  (0) 2010.04.30
:

시간 함수

Language/PHP 2010. 4. 30. 15:20

chechkdate 함수

정의

int checkdate(int month, int day, int year)

인자로 주어진 날짜가 타당한지를 검사하여 타당할 경우 true를, 그렇지 않을 경우 false를 반환한다.

ex)

<?

$res = chechkdate(2,29,2001);

if($res) {

      echo("입력하신 날짜는 올바른 정보입니다.");

} else {

      echo("입력하신 날짜는 올바르지 않은 정보입니다.");

}

?>

 

chechkdate함수를 이용해서 해당 월이 총 몇 일인지를 알아보자.

<?

function getTotalDays($year,$month) {

    $day = 1;

    while(checkdate($month,$day,$year)) {

          $day++;

    }

 

    $day = $day -1 ;

    return $day;

}

 

$totalDays = getTotalDays(2000,2);

echo("2000년 2월은 {$totalDays}일까지 있습니다.");

?>

 

date 함수

정의

string date(string format, int timestamp)

주어진 timestamp에 해당하는 시간을 지정한 형식에 맞게 출력한다. 1970년 1월1일을 기준으로 특정시점까지 맞게 출력한다.

 

date의 인자의 종류

Y : 연도를 네 자리 숫자로 출력한다.

y : 연도를 두 자리 숫자로 출력한다.

M : 월을 세자리 단축형 영문자로 출력한다.  ex)March =>Mar

F : 월을 완전한 영문자로 출력한다.

m : 월을 두자리 단위의 숫자로 출력한다.

n : m과 동일한 옵션이나 1~9월까지는 한 자리 숫자로 출력한다.

d : 일자를 두자리 숫자로 출력한다.

j : 일자를 출력하는데 10일 이하는 한자리 수로 출력한다.

I : 완전한 영문자로 요일을 출력한다.   ex)Sunday

D : 세 자리의 단축형 영문자로 요일을 출력한다.   ex) sunday

w : 요일을 한자리 숫자로 출력한다.

g : 시간을 12t시간제로 출력한다. 1~0시간까지 한자리 그대로 출력.

h : tlrksdmf 12시간제(오전,오후)로 출력.

G : 시간을 24시간제로 출력한다. 단 G와는 달리 0~9까지는 한자리 수자로 출력.

H : 시간을 24시간제로 출력한다. 0~9까지는 두자리 숫자로 출력.

a : am이나 pm으로 출력한다.

A : AM이나 PM으로 출력한다.

 i : 분을 두자리 숫자로 출력.

s : 초를 두자리 숫자로 출력.

z : 인자로 전달한 날짜가 그 해의 몇 번째 날짜인지를 출력한다.

 t : 인자로 전달한 해당 월의 총 일자 수를 출력한다.

 

ex)

<?

       res = mktime(23,15,23,3,11,2001);

       echo("timestamp으로 ${res}은 2001년 3월 11일 23시 15분 23초로 다음과 같이 출력할 수 있습

       니다.<p>");

 

       $str = date('년도출력 - Y 또는 y', $res);

       echo("$str<br>");

 

       $str = date("월출력 - M 이나 F 또는 m 또는 n' , $res);

       echo("$str<br>");

 

       $str =  datee('일출력 - d 또는 j' , $res);

 

 

strftime 함수

정의

string strtime(string format, int timestamp)

string()함수는 date() 함수와 동일한 역할을 수행하여 함수 호출 시에 지정해 준 format에 따라 날짜 정보를 호출한다. 언어 선택이 가능하다.

인자의 종류

%Y : 년도를 네 자리수로 출력한다.

%y : 년도를 두 자리 수로 출력한다.

%B : 현재의 locale에 따른 월 명을 완전한 이름으로 출력한다.   //December 또는 11월

%b : 현재의 locale에 따른 월 명을 축약하여 출력한다.

%d : 일자를 두자리 수로 출력한다.

%a : 현재의locale에 따른 요일 명을 축약 형태로 출력한다.

%A : 현재의 locale에 따른 요일 명을 완전한 문자로 출력한다.

%w : 요일 명을 한자리 숫자로 출력한다.

%H : 시간을 24시간제로 출력한다.

%I : 시간을 12시간제(오전,오후)로 출력한다.

%M : 분을 출력한다.

%S : 초를 출력한다.

%Z : 현재의 타임존을 출력한다.

%x : 현재의 locale에 따른 날짜(월/일/년)을 출력한다. 시간정보는 제외됨.  //00-12-06

%X : 현재의 locale에 따른 시간을 출력한다. 날짜정보는 제외됨.  //오전 11:34:54 또는 11:34:54 AM

%U : 올해 몇 번째 주가 지났는지를 출력해준다. 첫번째 일요일이 기준시간.

%W : 올해 몇 번째 주가 지났는지를 출력. 첫번째 월요일이 기준시간.

 

mktime 함수

정의

int mktime(int hour, int minute, int second, int mont, int day, int year)

말 그대로 timestamp값을 얻어내는 기능을 한다.

<?

$time = mktime();

echo("현재 시간의 timestamp값은 {$time}(초)입니다.<br>");

 

$time = mktime(0,0,1,3,44,2001);

echo("2001년 3월 11일의 timestamp값은 {$time}(초)입니다.<br>");

?>

 

time 함수

정의

int time(void)

mktime() 함수를 호출할 때 아무 인자도 전달하지 않은 경우와 동일한 결과를 반환한다.

 

getdate 함수

정의

array getdate(int timestamp)

getdate()함수는 날짜 정보를 timestamp 형태로 받아들여 연/월/일/시간/분/초 등의 정보를 담은 연관 배열의 형태로 반환한다.

인자의 종류

second, minute, hours, mday(일자), wday(요일), mon, year, yday(몇 일째인가를 출력), weekday, month

 

microtime 함수

정의

string microtime(void)

microtime()함수는 현재 시간에 대한 유닉스 시간 값과 마이크로 단위의 시간값을 함께 저장하여 이를 문자 열로 반환한다.

<?

$str = microtime();

echo $str;

?>

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

[정규표현식]ereg /eregi /ereg_replace /eregi_replace  (1) 2010.05.10
php 내부 함수  (0) 2010.05.07
date() 함수 예제  (0) 2010.04.30
date() 함수 포맷  (0) 2010.04.30
@의 역할  (0) 2010.04.27
:

date() 함수 예제

Language/PHP 2010. 4. 30. 15:07

date()함수가 지원하는 모든 형태들

a : am, pm

 

A : AM,PM

 

d : 2자리 정수의 날짜 형태

 

D : 요일의 앞 3글자 (Fri, Thu, Tue ... )

 

F : 해당 달의 이름 형태 (March, December, ... )

 

h : 2자리 정수의 시간 (12시간 이내)

 

H : 2자리 정수의 시간(24시간)

 

i : 2자리 정수의 분

 

l : 해당 날의 요일 (Friday, Thursday ... )

 

m : 해당 달의 2자리 정수 형태

 

M : 해당하는 달의 이름 앞 3글자 (Jan, Dec, ... )

 

s : 정수형의 초

 

T : 해당하는 달에 날이 몇일까지 있는지 (28,29,30,31)

 

Y : 해당 년의 4자리 정수 형태 (2001)

 

y : 해당 년의 2자리 정수 형태 (01)

 

z : 해당 년 1월 1일부터 몇일째 날인지

 

echo date("Y/m/d H:i:s");

결과 : 2002/10/4 13:56:12 이런식으로 나오게 된딥나다~

 

 

예전 날짜나 미래 날짜를 지정해서 쓰는 법을 알아봅시다.

 

mktime() 함수를 이용하면 간단하답니다.

 

$str = mktime(시간, 분 , 초 , 달 , 날 ,연도);

 

이렇게 하시면 $str에 지정하신 시간의 자료가 저장됩니다.

 

그 자료를 date()함수로 자기가 원하는 형태로 나타낼 수 있답니다. :)

 

이런 식으로 시간 함수를 사용하면 정말 많은 것들을 할 수 있씁니다.

 

어떤 예전 날짜나 미래의 날짜가 무슨 요일인지도 쉽게 알아볼 수 있죠.

 

그럼 예제로 한번 밀레니엄 버그가 생긴다는 2000년 1월 1일이 무슨 요일이었는지 한번 알아보죠~

 

echo date("l", mktime(0,0,0,1,1,200));

 

해주면 200년 1월 1일이 무슨 요일인지 출력합니다.

 

참고로 방금 해본 결과 토요일이엇네요 :)

 

 

 

 

 

제 게시판에 보이는 날짜는 mysql에서 now()로 지정한 날짜를 받아와서

 

Oct 04, 2002 (Fri) 이런 형태로 만듭니다.

 

그걸 어떻게 하나 알아봅시다.

 

now()로 시간을 mysql상에서 저장하게 되면 2002-10-4 19:23:40

 

이런식으로 저장이 됩니다.

 

그러면 이렇게

 

$date = substr($data, 0, 10);

 

$str = explode("-", $date);

 

$date = date("M d, Y (D)", mktime(0, 0, 0, $str[1], $str[2], $str[0]));

 

이런식으로 앞의 10글자만 따오고 ( 2002-10-04 <- 10글자 맞죠? )

 

"-" 이 다시 기호로 분리시켜서 :)

 

date()함수와 mktime()함수를 이용해서 날짜를 원하는 형태로 만들어주게 됩니다.

 

출처:

http://www.idsu.net/bbs/view.php?wuser_id=study&category_no=&u_no=20&pg=2&sn=&shs=&shn=&shm=

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

php 내부 함수  (0) 2010.05.07
시간 함수  (0) 2010.04.30
date() 함수 포맷  (0) 2010.04.30
@의 역할  (0) 2010.04.27
php 배열  (0) 2010.04.27
:

date() 함수 포맷

Language/PHP 2010. 4. 30. 14:34

 date()함수

format

기능

 예

 Y

 연도를 네자리 숫자로 출력

2001년의 경우 2001의 네자리로 출력 

 y

연도를 두자리 숫자로 출력 

2001년의 경우 01의 두자리로 출력 

 M

월을 세 자리 단축형 영문자로 출력 

3월을 March의 단축형인 Mar로 출력 

 F

 월을 완전한 영문자로 출력

 3월의 경우 March로 출력

 m

 월을 두자리 단위의 숫자로 출력

3월의 경우  3이 아닌 03으로 출력

 n

 m과 동일한 옵션이나 단 1~9월까지는 한자리 숫자로 출력

3월의 경우 03이 아닌 3으로 출력 

일자를 두자리 숫자로 출력 

01~31 

 j

일자를 출력하는데 10일 이하는 한자리수로 출력 

1~9, 10~31 

 l

원전한 영문자로 요일을 출력 

일요일의 경우 Sunday로 출력 

 D

세자리의 단축형 영문자로 요일을 출력 

일요일의 경우 Sun으로 출력 

 w

요일을 한자리 숫자로 출력 

일-0, 월-1, 화-2

 g

시간을 12시간제로 출력 

23시의 경우 오후 11시이므로 11로 출력하고 20시의 경우 오후 8시이므로 08이 아닌 8로 출력 

 h

시간을 12시간제로 출력 

 23시의 경우 오후 11시이므로 11로 출력하고 20시의 경우 오후 8시이므로 08로 출력

 a

am이나 pm으로 출력 

 

 A

AM이나 PM으로 출력 

 

 i

분을 두자리 숫자로 출력 

00~59 

 s

초를 두자리 숫자로 출력 

 00~59

 z

인자로 전달한 날짜가 그 해의 몇번째 날짜인지를 출력한다. 이 값은 0부터 시작하므로 윤년이 아닌 경우의 12월31일은 364로 출력한다. 

 

 t

 인자로 잔달한 해당 월의 총 일자수를 출력한다. 2001년 2월의 경우 총 28일이 존재하므로 28을 출력한다.  

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

시간 함수  (0) 2010.04.30
date() 함수 예제  (0) 2010.04.30
@의 역할  (0) 2010.04.27
php 배열  (0) 2010.04.27
PHP - $_SERVER 함수  (1) 2010.04.22
: