Ben Zend Framework yüklü ve PHP yolu dahil kurmak için ihtiyaç var?

3 Cevap php

Ben Zend Framework dosyaları dökülüyor

"home/hotbuzz/public_html/include/zend/"

Benim hosting: linux

Ben komut yüklemek istiyorum. Ben yüklemek zaman bu hatayı alıyorum.

Bazı bilgiler: Ben onun "usr / local / Zend" yer dedi hosting çocuklar, benim Zend sordu

Ama ben / bu ev / hotbuzz / public_html / include / zend kullanmak istiyorum

Ben PHP kaplı bu eklemişti:

set_include_path(dirname(__FILE__).';'.get_include_path());
require_once 'Zend/Loader.php';

Ben bu hatayı alıyorum

Fatal error: require_once() [function.require]: Failed opening required 'Zend/Exception.php' (include_path='/home/hotbuzz/public_html/include;.:/usr/lib/php:/usr/local/lib/php') in /home/hotbuzz/public_html/include/Zend/Loader.php on line 87

Ben (. Htaccess) benim PHP kodu yolunu içerir kurmak ve yapılandırmak istiyorum.

3 Cevap

Eğer doğru yapıyorlardı. Eğer ana komut (index.php) ilk satırlarda set_include_path aramak ve daha sonra include / Zend Framework dosyaları gerektirir gerekir. 'Zend' ZF dönüşümleri adlandırma izleyin (büyük Z) için Zend Framework içeren klasörü yeniden adlandırmak için hatırlıyorum, sonra senin dizini dahil daki Zend klasör koydu.

<?php
$newIncludePath = array();
$newIncludePath[] = '.';
$newIncludePath[] = 'include';
$newIncludePath[] = get_include_path();
$newIncludePath = implode(PATH_SEPARATOR, $newIncludePath);
set_include_path($newIncludePath);
// now include path is setup and we can use zend
require_once 'Zend/Loader.php';
Zend_Loader::registerAutoLoad('Zend_Loader', true);
// the rest of the code
?>

Eğer senin yolunu içerir ve dizin (yani Zend dizinini içerir) dahil değil Zend dizin koyarsanız, bu kullanamazsınız:

require_once 'Zend/Loader';

yerine kullanmalısınız:

require_once 'Loader';

hangi iyi bir fikir değildir. Zend / * modeli kullanılarak, dosyaların Zend Framework ve hangi dosyaların sahibi olan itibaren dahil olduğu hatırlayacaktır. bu yüzden sadece senin yolunu dahil etmek dahil dizin eklemek.

Eğer auto_prepend kullanmak yerine eklerseniz daha başarılı olabilir ...

php_value include_path /home/hotbuzz/public_html/include/zend/
php_value auto_prepend_file Zend/Loader.php

Bu başlangıç ​​ile ve yürütme üzerinde apache günlüğüne ne alabilirim?

Eğer bootstrap.php ilk satırında aşağıdaki kodu ekleyebilirsiniz:

set_include_path('.' . PATH_SEPARATOR . '../library' . PATH_SEPARATOR . '../application/models/' . PATH_SEPARATOR . get_include_path());