Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 웹하드추천
- jquery
- UTF-8
- post
- MySQL
- Laravel
- curl
- date
- Session
- php
- JavaScript
- Apache
- variables
- 무료다운로드쿠폰
- composer-php
- Linux
- file-upload
- OOP
- 웹하드순위
- Regex
- HTML
- 전략
- JSON
- function
- Ajax
- Arrays
- string
- 경영
- Forms
Archives
- Today
- Total
개발! 딱 깔끔하고 센스있게!
PHP 에서 동적 클래스 제거 본문
저 는 다음 과 같은 방식 으로 플러그 인의 동적 로드 를 실현 하 였 습 니 다:
function processPlugin( $plgFile, $db ) { require_once( $plgFile ); $plgin = new PlginImpl(); $plgin->setDb($db); $ret = $plgin->process(); return $ret; }
모든 플러그 인 은 PlginImpl 라 는 종 류 를 정의 합 니 다.
이 종 류 는 잘 작 동 합 니 다.
하지만 process () 값 에서 지정 한 다른 플러그 인 을 호출 할 수 있 습 니 다.
이것 은 위 에서 지정 한 같은 방법 을 호출 할 것 입 니 다.
그러나 실패 한 원인 은:
Fatal error: Cannot redeclare class PlginImpl in ..
모든 플러그 인 은 클래스 입 니 다.
즉:
class PlginImpl extends Plugin implements PluginInterface
Plugin 은 일부 유용 한 기능 을 제공 합 니 다.
Plugin Interface 는 procss () 를 정의 합 니 다.
모든 플러그 인 이 PlginImpl 이 라 고 불 린 다 고 가정 합 니 다.
그래서 문제 가 되 었 습 니 다: require \ u 로 클래스 (PlginImpl) 를 한 번 더 불 러 온 후, 제거 하 는 방법 이 있 습 니까?아니면 전혀 다른 방법 이 있 을 까?
EDIT I tried without succeeding the following things:
- unset
$plgin
afterprocess()
- calling
__destruct()
- it doesn't work neither withinprocessPlugin()
nor within theprocess
method
대답 하 다.
이 종 류 를 마 운 트 한 다음 에 마 운 트 해제 할 수 없 기 때문에 모든 플러그 인 이름 을 바 꿀 수 있 습 니 다.
PluginX, PlumginY 등등. 하지만 이것 은 중요 하지 않 습 니 다.
보 여 주 는 플러그 인 화면 을 사용 하도록 강요 할 수 있 기 때 문 입 니 다.
특정 플러그 인 을 불 러 오 려 면, 단순히 solomongaby 가 제안 한 내용 을 사용 할 수 있 습 니 다.
하지만 파일 이름 대신 플러그 인의 이름 을 전달 할 수 있 습 니 다.
이런 것:
function loadPlugin($pluginName) { require_once $pluginName . '.php'; $plugin = new $pluginName; //do whatever with $plugin }
'개발 스크랩 메모 > PHP' 카테고리의 다른 글
Cenos 에서 PHP 5 에 curl 지원 을 추가 하 는 방법 (0) | 2020.12.13 |
---|---|
PHP 생 성 csv 파일 은 Excel 2007 에 파운드 부 호 를 표시 합 니 다. (0) | 2020.12.13 |
PHP: 현재 시간 을 UTC 로 변환 합 니 다. (0) | 2020.12.13 |
php 에서 url 클릭 시 xml 응답 보 내기 (0) | 2020.12.13 |
Liux Fdora 에서 Apache 의 PHP 를 어떻게 사용 합 니까? (0) | 2020.12.13 |
Comments