클래스를 포함하는 데 문제가 있습니다. 다음은 문제를 설명하기위한 간단한 예입니다.include를 사용할 때 PHP 클래스 경로 충돌이 발생했습니다.
클래스 번호. 1 (경로 : /home/day/Class_A.php) :
class Class_A {
public function sayHi() {
echo "Good day";
}
}
클래스 번호. 2 (경로 : /home/test/Class_B.php)
class Class_B {
public function greeting() {
if(class_exists("Class_A")!=true)
include "../day/Class_A.php";
$test = new Class_A();
$test->sayHi();
}
}
PHP 파일 : php.php가 Class_B 등을 포함하는 경우 (경로 /home/php.php)는
if(class_exists("Class_B")!=true)
include "test/Class_B.php";
$g = new Class_B;
$g->greeting();
문제는 Class_B는 Class_A를 포함하고 Class_B는 클래스 객체의 경로가 php.php 파일과 동일하기 때문에 Class_B를 열지 못합니다.
내 질문 : 이 문제를 해결할 수있는 좋은 방법이 있습니까? 변경
스토어 클래스. require_once를 사용하고 클래스의 include 경로에 추가 된 경로를 기준으로 (require_once 구조에서) 경로를 만듭니다. – ghbarratt