2011-11-11 4 views
1

공유 호스팅 계획에 smarty를 설치하려고합니다. 하위 도메인에 smarty 파일을 설치하여 사용할 것입니다. SMARTY_DIR 변수를 정의하려고하지만 웹 호스트가 제공 한 절대 호스팅 경로를 사용하는 방법을 잘 모르겠습니다. 여기공유 호스팅의 절대 경로 : Smarty 설치

내 경로

('PHP 설정'에서 찾을 수의 cPanel에 따라)가 포함된다.는/usr/lib 디렉토리/PHP : 이제/usr/지방/lib 디렉토리/php에

때 내가 Smarty 파일을 하위 도메인 디렉토리에두면 index.php와 libs (디렉토리)가 같은 레벨에 있습니다. 그래서 내 생각은 다음과 같이 할 것입니다 :

define('SMARTY_DIR','.:/usr/lib/php:/usr/local/lib/php/libs/'); 
require_once(SMARTY_DIR . 'Smarty.class.php'); 

제대로하지 않습니까? 파일이 존재하지 않는다는 명백한 오류가 나타납니다.

모든 의견/조언을 부탁드립니다.

이 경로 아니다

답변

1
define('SMARTY_DIR','.:/usr/lib/php:/usr/local/lib/php/libs/'); 

, 이것은 (상수 PATH_SEPARATOR 통해 PHP 가능 승 ; 리눅스 :의 경로 분리기로 분리하여,) 두하는 Pathes이다. include(_once)require(_once)은이 기능을 지원하지 않습니다.

define('SMARTY_DIR','/usr/lib/php:/usr/local/lib/php/libs/'); 
2

휴대 성을 위해. [__DIR__][1] 또는 dirname(__FILE__)

코드는 현재 스크립트와 동일한 수준의 smarty 폴더를 사용하는 것과 유사합니다.

define('SMARTY_DIR', __DIR__ . '/smarty/'); 
require_once(SMARTY_DIR . 'Smarty.class.php');