나는이 클래스를 Wordpress 환경의 테마로 만들었습니다.PHP 클래스 내에서 메소드/함수가 작동하는 방법
function get_image()
{
return 'working';
}
을하지만 실행할 때이
echo $theme->get_image();
그것은 작동하지 않기 때문에 지금은 의아해입니다 .... 그러나 :
class Theme {
function __construct()
{
add_action('after_setup_theme', array(&$this, 'do_this'));
}
function do_this()
{
require_once('helper_functions.php');
}
}
$theme = new Theme();
그리고
는 helper_functions.php 내에서 내가 가진 직접 전화하면 다음과 같이 작동합니다.echo get_image();
하지만 클래스 메서드를 사용하고 있으므로 클래스 메서드를 사용하려면 클래스 개체를 사용해야합니다 ... 왜 직접 호출 할 수 있습니까?
내가이 방법을 사용하는 이유는 메서드로 포함 할 함수가 많고 클래스를 모두 유지하는 것이 아니라 별도의 파일로 구성하려고하기 때문입니다. 달성하고자하는 것에 대한 해결책이 있습니까? 감사. –
함수가 클래스의 일부가되도록 정말로 필요한 경우에는 클래스에 정의해야합니다. 만약 당신이 절대적으로 여러 파일을 관리하고 싶다면 내가 제공 한 대안 답을 확인해 보라. :) – fhugas
고마워. 그게 정확히 내가 한 일이라고 생각해. 그냥 include 대신에 require_once를 사용 했어. 차이가있다. ? –