홈으로 | 무료회원가입 | 아이디/비번찾기
추천음악방송
운.영.자.1대1.상담
온라이브 음악방송
음악방송 앱 다운로드
보안∵서버∵쿠키
윈도우∵프레임
이미지∵배경
시간∵달력∵계산
상태바∵타이틀바
음악∵영상
폼∵전송∵테이블
키보드∵마우스
효과∵링크∵메뉴
Script∵php
기타
PHP 강좌
윈도우관련팁
웹관련팁
홈페이지제작팁
기본강좌
레지스트리
윈도우서버
리눅스서버
Android
php class 사용법
10년 전
php 5 버젼이고 __autoload()를 기본으로 합니다.

1. interface 정의 및 사용
<?php
interface member_it{
  public function get_member($uid='');
  public function update_member($uid='');
  public function delete_object($uid='');
}//인터페이스를 구현

class normal_member implements member_it{
    public function get_member($uid=''){ //디비에서 정보를 찾아서 리턴}
    public function update_member($uid=''){ // 디비에서 정보를 찾아서 업데이트}
    public function delete_object($uid=''){// 디비에서 정보를 찾아서 제거}

}
class admin_member implements member_id{
  public function get_member($uid=''){ //디비에서 정보를 찾아서 리턴}
    public function update_member($uid=''){ // 디비에서 정보를 찾아서 업데이트}
    public function delete_object($uid=''){// 디비에서 정보를 찾아서 제거}
}
?>

2. 정적 클래스 사용
<?php
class util{
  public static function getParam($name=''){
    $result = $_POST[$name] ? $_POST[$name] : $_GET[$name];
    return trim(urldecode(stripslashes($result));
  }
  public static function is_valid_jumin($ssn=''){
    $ssn = $ssn == false ? self::getParam('ssn') : $ssn;
    $ssn = preg_replace("/\D+|-/",trim($ssn));
    return preg_match("/\d{7}-?\d{6}/", $ssn);
  }
}
//실제 사용
$name = util::getParam('name');
$ssn = util::getParam('ssn');
if(util::is_valid_jumin($ssn) == false){
  echo "---";
}
?>

3. 생성자와 소멸자 사용
<?php
class payment{
  private $db_con;
  public function __construct($uid,$price=''){
      if($uid){
          $normal_member = new normal_member();
            $n_member = $normal_member->get_member($uid);    
      }
      if($price == false)
        $price = util::getParam('price');

      $dbcon = $this->get_db();
    //이후 로직
  }

  private function get_db(){
    $this->db_con =  mysql_connect("localhost", "id", "passwd");
    return $this->db_con;
  }
  public __desturct(){
    if($this->db_con == true)
    mysql_close($this->db_con);
    $this->db_con = null;
  }
}
?>

4. 상속
<?php
class company_payment extends payment {
  public function __construct($uid, $price =''){
    parent::__construct($uid, $price) // 이부분은 헷갈리네요....
  //혹은 $this->__construct($uid, $price); 인지...
  //요즘에는 상속을 사용안한지 오래되서..
  }
}
?>

5. 디비 클래스
<?php
$db1 = new Mysqli("localhost", "id1", "pwd1", "dbname");
$db2 = new Mysqli("host2", "id2", "pwd2", "dbname2");
/* 이것은 작동합니다. 동시에 2개의 커넥션을 연결합니다. */
/*
$dbcon1 = mysq_connect("localhost", "id1", "pwd1");
$dbcon2 = mysq_connect("localhost", "id2", "pwd2");

mysql_query($query, $dbcon1);
mysql_query($query, $dbcon2);

이것은 작동하지 않습니다. mysql_connect()는 항상 젤 마지막에 호출한 커넥션만 작동하는 이상한 넘...
*/

$db1->query();
$db1->real_query();
$db1->stmt_query();  //이것은 아직 메뉴 보는중입니다... 사용이 쪼매 힙듭니다.
$db1->multi_quey();  // 이기능은 신선합니다.
$db1->muli_query("insert into member values('$uid', '$name');insert into member_point values('$uid', 1000);update
member_point set point = point + 1000 where uid = '$recomment';");  // 동시에 3개가 성공하거나 동시에 3개가 실패 합니다.  if(){ if(){ if(){}}} 이 3개의 구문을 하나로 합친 넘...
?>

6. 클래스 serieliaze..  
//php4에서만 해보고 요즘에는 사용하지 않는 편입니다만.. 궁금하시다면.
//사용하지 않는 이유는 항상 상단에 include_once member.class.php 를 인쿨르드 해야 하는데 __autoload 쓰는 편이라서.
1. login.php
<?php

$member = new member();
$member->name = 'test';
$member->id ='test';

$member_serialize = base64_encode(serialize($member));
$_SESSION['member'] = $member_serialize;
?>
2. mypage.php
<?php
$login_member= unserialze(base64_decode($_SESSION['member']));
echo $login_member->name.'--'.$login_member->id;
?>

7. 새롭게 추가한 메소드들
<?php
class member{
  function __set($key,$value){
  }  
  function _get($name){
  }
  function __get_vars(){
  }
  function __is_set($name){
  }
  function __call($func, $args)
  }
  function __toString(){
  }
  ... 너무 많군요.
}
?>

8. namespace
php5.3에서만 지원되서 아직 못해봤어요 ㅜ.ㅜ...
추천추천 : 334 추천 목록
번호 제목
3,025
 PHP 파일 존재 여부 파악하기(로컬 파일 존재 및 원격지 파일 존재)
3,024
 [CSS] 박스 세로 가운데 중앙 정렬 6가지
3,023
 CSS Layout 수평 & 수직 정렬
3,022
 여러 도메인들 간 쿠키 공유하기
3,021
 태그 사이에 있는 텍스트를 추출
3,020
 [JQuery] textbox focus on off일때 숫자 콤마 보여주기
3,019
 쿠키 생성,가져오기,삭제
3,018
 사용자 함수 모음
3,017
 마우스,키보드 제한 ( 오른쪽클릭,드래그,영역선택등..)
3,016
 [HTML5] <video> - DOM으로 제어하기
3,015
 HTML5 video 태그에서 영상 좌우반전
3,014
 PHP - 특정 태그 및 문자열 추출, 제거
3,013
 [PHP] define과 defined의 차이
3,012
 우클릭 완벽차단 스크립트
3,011
 iframe 높이 100% 맞추기
3,010
 curl 함수를 이용한 HTTP REFERER 변경
3,009
 윈도우10 시스템 파일 및 Dism 검사
3,008
 텍스트 줄바꿈, 글자자르기 CSS
3,007
 jQuery Mobile에서 유용한 코드 10가지.
3,006
 [PHP] dirname()함수와 $_SERVER 관련 상수들
3,005
 [PHP] 파일 크기, 사이즈 불러오는 함수, filesize()
3,004
 [jQuery] jQuery Quick API
3,003
 [ transition ] 링크 hover 색상 변화 속도 조절
3,002
 PHP 5.3.0 에서 사라진 함수들 대체
3,001
 어떤 파일들이 include 나 require 되었는지 확인하는 함수(get_included_files)
목록
환상의뽕짝카페
트로트티비
뽕짝아가씨
트롯맘
종합성인가요방
카바레 음악
트롯디스코팡팡
관광 메들리
트롯카페
가요감상실
추억의옛노래
스페셜가요광장
BillBoard Free
추천가요모음
경음악.전자올겐
스페셜음악여행
WOLRD POPs
K-POP\BillBoard
POP TOP BEST

최신인기가요특집
추천가요\인기
F뮤직 인기\발라드
F뮤직 애창\트로트
트로트성인가요
인기가요
프리미엄 POP
경음악\기타
프리미엄 최신가요
프리미엄 성인가요
뮤직트로트 부산광역시 부산진구 가야동 ㅣ 개인정보취급방침
Copyright (C) musictrot All rights reserved.