class 상속과 생성자 자식 클래스가 생성자를 정의하는 경우 부모 생성자는 암시 적으로 호출되지 않습니다. 부모 생성자를 실행 하려면 자식 생성자 내에서 parent :: __ construct ()를 호출 해야합니다. 자식이 생성자를 정의하지 않으면 일반 클래스 메서드처럼 (비공개로 선언되지 않은 경우) 부모 클래스에서 상속 될 수 있습니다. PHP 주요레퍼런스/객체지향 프로그래밍 2022.07.22
php ini 변경없이 session 시간 늘리기 SESSION을 핸들링하려면 SESSION 이 저장되는 디렉토리를 별도로 사용해야 한다. $sessdir = $_SERVER['DOCUMENT_ROOT']."/저장디렉토리"; ini_set('session.save_path', $sessdir); session_save_path($sessdir); ini_set("session.cache_expire", 180); // 세션 유효시간 : 분 PHP 주요레퍼런스/기타 2018.02.28
배열키 정의할때 따옴표(' 또는 ")를 쓰지 않은경우 배열키 정의할때 따옴표(' 또는 ")를 쓰지 않은경우 즉 $a[abc] 이와 같이 코딩한 경우 설정에 따라 오류가 나는 경우가 발생한다. (원 문법상 $a['abc'] 혹은 $a["abc"] 이렇게 코딩 되어야 함) 예전 버전 설정의 경우 오류가 안나는데... 최신 버전으로 업그레이드 하니 오류가 뜸... 이와 같은 경우 php.ini 설정을 변경 하면 된다. (5.5버전 기본) error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT (5.3버전 기본) error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED ---------------------------------------------------------.. PHP 주요레퍼런스/기타 2017.04.10
아파치 AllowOverride와 .htaccess [아파치] AllowOverride와 .htaccess 일반적으로 게시판이나 기타 BBS에 파일을 첨부할 경우 적지 않게 text/html 형식의 *.html *.htm 파일이 많이 올라오곤 합니다. 보안의 이유로 올라온 text/html 파일을 강제로 .phps나 .txt 로 마임타입을 바꾸는 경우가 많으나 올라온 text/html 파일에 php코드가 안들어간 순수 HTML코드만 있을 경우 일반 사용자가 보기엔 상당히 불합리하다. 그래서 업로드 디렉토리에 한에서 *.html *.htm파일을 php코드가 실행되지 않도록 마임타입을 재조정해야 합니다. 우선 위의 문제를 해결하기 위해서는 아파치 httpd.conf 파일에서 다음과 같은 조건이 우선 해결되어 있어야 한다. 즉, 아파치 server config.. PHP 주요레퍼런스/기타 2013.08.01
__set / __get 메소드 void __set(string name, mixed value) 클래스의 인스턴스가 가진 멤버 변수에 새로운 값을 할당할 때 호출된다. name 멤버 변수에 value 값을 할당한다. $time->hour = 22 와 같이 인스턴스가 가진 멤버 변수에 새로운 값을 할당할 경우 __set() 메소드가 정의 되어 있다면 $hour에 22라는 값일 할당되기 전에 호출된다. mixed __get(mixed name) 클래스의 인스턴스가 가진 멤버 변수를 참조하여 그 값을 얻을 때 호출된다. name 멤버 변수 값를 반환한다. echo $time->hour; 와 같이 인스턴스가 가진 멤버 변수를 참조할경우 __get() 메소드가 정의 되어 있다면 반환하기 전에 호출한다. ex) $time->hour +=25 위.. PHP 주요레퍼런스/객체지향 프로그래밍 2011.10.24
소멸자 __destruct() function __destruct() 인스턴스의 소멸되기 시점에 자동호출된다. __construct와 반대개념이다. 이미 생성된 인스턴스를 더이상 참조하지 않을때 해당 인스턴스가 소멸되기 바로전에 호출한다. 일단 스크립트의 실행이 종료되면 스크립트에서 생성했던 인스턴스는 더 이상 참조되거나 사용되지 않는다. 그러므로 소멸자가 정의되어 있다면 스크립트 실행의 마지막 시점에서 인스턴스가 메모리로부터 제거되기 전에 인스턴스의 소멸자가 호출된다. 그러나 스크립트가 종료되기 전이라도 이미 생성된 인스턴스에 강제로 NULL값을 할당하거나 unset()과 같은 함수를 호출하면 스크립트 종료 전이라도 해당 인스턴스의 소멸자를 호출할 수 있다. 예제 예제-소멸자 강제 호출 PHP 주요레퍼런스/객체지향 프로그래밍 2011.10.24
생성자 __constructor() function __construct(매개변수1,매개변수2,매개변수3 ...) 인스턴스의 생성과 동시에 자동호출된다. 인스턴스가 가진 멤버 변수의 값을 초기화하는는 역할 new 연산자를 이용해 클래스의 인스턴스를 초기화할때 사용될 인자를 함께명시함으로써 호촐 예제 PHP 주요레퍼런스/객체지향 프로그래밍 2011.10.24
멤버 접근 제한자 접근 제한자 의미 private 해당 클래스 내에서만 접근 가능 protected 해당 클래스 및 클래스의 자식 클래스에서만 접근 가능 public 모든 클래스에서 접근 가능 PHP 주요레퍼런스/객체지향 프로그래밍 2011.10.24
클래스의 정의 및 인스턴스의 생성 클래스의 정의 배열에 있는 원소의 합을 계산하여 반환한다. 인스턴스 정의된 클래스로 부터 생성된 각각의 객체를 인스턴스라 한다. 인스턴스가 가진 멤버(멤버변수, 멤버함수)를 참조할 때는 '->' 연산자를 사용한다. 예제 PHP 주요레퍼런스/객체지향 프로그래밍 2011.10.24
객체지향 프로그래밍의 특징 1. 추상화 : 어떤 대상이 가진 복잡하고 구체적인 사실이나 내용보다는 문제를 해결하기 위한 관점에서 그것이 가진 근본적이고 본질적인 것을 추려내는 과정이다. 즉 어떤 사물이나 개념으로부터 그것이 가진 상태와 동작을 객체로 모델링 하는 과정 2. 상속성 : 새로운 클래스를 설계할 때 모든 것을 처음부터 정의하는 것이 아니라 이미 만들어 놓은 클래스 중에 새로 만들고자 하는 클래스와 유사한 클래스가 있으면 이클래스로부터 기본적인 데이터와 함수를 물려받고 여기에 새로운 클래스에서 필요한 데이터와 함수만을 추가하여 만드는 개념 3. 캡슐화 : 정보를 은폐한다. 클래스 사용자의 입장에서는 불필요한 정보를 숨김으로써 사용방법과 기능을 쉽게 이해하고 활용할 수 있도록 하고, 개발자의 입장에서는 자신이 개발한 클래스.. PHP 주요레퍼런스/객체지향 프로그래밍 2011.10.24
정규표현식 패턴문자 "." '.'는 임의의 한글자를 가리킨다. a.c : 어느 한 문자의 앞무자가 'a'이고 뒷문자가 'c' 인 모든 문자열을 포함한다. => aac, abc, acc .. 은 포함되고 ac, abbc 는 포함되지 않는다. 패턴 의미 s.e s와 e 사이에 임의의 한 글자를 갖는 모든 문자열과 일치 ex) sae, sbe, sce, sde .ce ce 앞에 임의의 한글자를 갖는 모든 문자열과 일치 ex) ace, bce, cce, dce, office, kce PHP 주요레퍼런스/정규 표현식 2011.09.01