0

index.php의 경로를 변경하려고합니다.젠드 프레임 작업에서 index.php를 응용 프로그램 루트 밖으로 이동

나는 부트 스트랩 zend 구조를 가지고 있습니다.

그래서 newapp라는 새 폴더를 만들었습니다. 경로는 우리의 index.php가있는 루트 경로입니다.

그런 다음 newapp 디렉토리에서 응용 프로그램을로드 할 수 있도록 index.php를 newapp에 복사했습니다.

하지만 문제는 내가 복사 한 index.php에서 구성 파일을로드 할 수 없다는 것입니다. 아래에 주어진 오류가 발생합니다. 내 실제의 index.php가 나는 index.php를 변화해야합니까

<?php 
    ini_set('memory_limit', '-1'); 
    set_time_limit(0); 
    defined('BASE_PATH')|| define('BASE_PATH', realpath(dirname(__FILE__))); 
    define('APPLICATION_PATH', BASE_PATH . '/application'); 

    set_include_path('../../library1.12.0/'. get_include_path()); 

    require_once 'Zend/Loader/Autoloader.php'; 
    $loader = Zend_Loader_Autoloader::getInstance(); 
    $loader->setFallbackAutoloader(true); 

    defined('APPLICATION_ENV')|| define('APPLICATION_ENV',(getenv 

('APPLICATION_ENV') ? getenv('APPLICATION_ENV'): 'staging_mysql')); 


    $application = new Zend_Application(
    APPLICATION_ENV, 
    APPLICATION_PATH . '/configs/application.ini' 
    ); 
    $application->bootstrap(); 
    $application->run(); 

아래에 주어진

- trunk 

     - index.php 
     - application 
      - bootstrap.php 
      - configs 
       - config.ini 
     - newapp 
      - index.php (copy of above) 

Fatal error: Uncaught exception 'Zend_Config_Exception' with message 

'parse_ini_file(E:\xampp\htdocs\..../configs/application.ini) [<a href='function.parse- 

ini-file'>function.parse-ini-file</a>]: failed to open stream: No such file or directory' 

in E:\xampp\htdocs\ZendFramework-1.12.0\library\Zend\Config\Ini.php:182 

주 내 폴더 구조?

  • 나는

    APPLICATION_PATH로 설정 파일의 경로를 변경했습니다. '/../../configs/application.ini'

하지만 작동하지 않았다 - 나는 창

enviornment 변수 설정에서의 경로 변수를 설정 한 beacuse 젠드 라이브러리 것은 볼 수 있습니다 .

  • 나는이 또한 realpath(dirname(__FILE__))."/.."

시도하지만 응용 프로그램이로드되지 않습니다.

답변

0

시도

set_include_path(
    APPLICATION_PATH.'/../library1.12.0'.PATH_SEPARATOR. 
     APPLICATION_PATH.'/../library1.12.0/Zend' 
); 
+0

경고 : require_once (Zend/Loader/Autoloader.php) [function.require-once] : 스트림을 열지 못했습니다 : –

0
defined('BASE_PATH') || define('BASE_PATH', realpath(dirname(__FILE__))); 
define('APPLICATION_PATH', BASE_PATH . '/application'); 
set_include_path('../../library1.12.0/'. get_include_path()); 

defined('BASE_PATH')|| define('BASE_PATH', realpath(dirname(__FILE__))); 
defined('APPLICATION_PATH') 
    || define('APPLICATION_PATH', BASE_PATH . '/../../application'); 

// Ensure library/ is on include_path 
set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../library1.12.0'), 
    get_include_path() 
))); 

참고 아래의 라인이 newapp에/index.php에 일해야 추가 : 폴더 'library1.12.0'shoould 응용 프로그램 폴더 수준에 있어야하고 Zend 폴더가 있어야합니다. 희망이 당신을 도울 것입니다, 나는 그것과 그 일을 테스트했습니다.