PHP 주요레퍼런스

PHP 주요레퍼런스 179

배열키 정의할때 따옴표(' 또는 ")를 쓰지 않은경우

배열키 정의할때 따옴표(' 또는 ")를 쓰지 않은경우 즉 $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 ---------------------------------------------------------..

아파치 AllowOverride와 .htaccess

[아파치] AllowOverride와 .htaccess 일반적으로 게시판이나 기타 BBS에 파일을 첨부할 경우 적지 않게 text/html 형식의 *.html *.htm 파일이 많이 올라오곤 합니다. 보안의 이유로 올라온 text/html 파일을 강제로 .phps나 .txt 로 마임타입을 바꾸는 경우가 많으나 올라온 text/html 파일에 php코드가 안들어간 순수 HTML코드만 있을 경우 일반 사용자가 보기엔 상당히 불합리하다. 그래서 업로드 디렉토리에 한에서 *.html *.htm파일을 php코드가 실행되지 않도록 마임타입을 재조정해야 합니다. 우선 위의 문제를 해결하기 위해서는 아파치 httpd.conf 파일에서 다음과 같은 조건이 우선 해결되어 있어야 한다. 즉, 아파치 server config..

__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 위..

소멸자 __destruct()

function __destruct() 인스턴스의 소멸되기 시점에 자동호출된다. __construct와 반대개념이다. 이미 생성된 인스턴스를 더이상 참조하지 않을때 해당 인스턴스가 소멸되기 바로전에 호출한다. 일단 스크립트의 실행이 종료되면 스크립트에서 생성했던 인스턴스는 더 이상 참조되거나 사용되지 않는다. 그러므로 소멸자가 정의되어 있다면 스크립트 실행의 마지막 시점에서 인스턴스가 메모리로부터 제거되기 전에 인스턴스의 소멸자가 호출된다. 그러나 스크립트가 종료되기 전이라도 이미 생성된 인스턴스에 강제로 NULL값을 할당하거나 unset()과 같은 함수를 호출하면 스크립트 종료 전이라도 해당 인스턴스의 소멸자를 호출할 수 있다. 예제 예제-소멸자 강제 호출

객체지향 프로그래밍의 특징

1. 추상화 : 어떤 대상이 가진 복잡하고 구체적인 사실이나 내용보다는 문제를 해결하기 위한 관점에서 그것이 가진 근본적이고 본질적인 것을 추려내는 과정이다. 즉 어떤 사물이나 개념으로부터 그것이 가진 상태와 동작을 객체로 모델링 하는 과정 2. 상속성 : 새로운 클래스를 설계할 때 모든 것을 처음부터 정의하는 것이 아니라 이미 만들어 놓은 클래스 중에 새로 만들고자 하는 클래스와 유사한 클래스가 있으면 이클래스로부터 기본적인 데이터와 함수를 물려받고 여기에 새로운 클래스에서 필요한 데이터와 함수만을 추가하여 만드는 개념 3. 캡슐화 : 정보를 은폐한다. 클래스 사용자의 입장에서는 불필요한 정보를 숨김으로써 사용방법과 기능을 쉽게 이해하고 활용할 수 있도록 하고, 개발자의 입장에서는 자신이 개발한 클래스..

정규표현식 패턴문자 "."

'.'는 임의의 한글자를 가리킨다. 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