Ben bir üretim sunucusuna geliştirme PHP sitesini hareketli ve yeni veritabanı bağlantısını test ediyorum. Ben sadece bu (ama gerçek verileri ile) olan bir config.php
sayfa var:
<?php
// Database Constants
defined('DB_SERVER') ? null : define('DB_SERVER', 'xxx.xxx.xxx');
defined('DB_PORT') ? null : define('DB_PORT', 'yyy');
defined('DB_USER') ? null : define('DB_USER', 'zzz');
defined('DB_PASS') ? null : define('DB_PASS', 'abcdefg');
defined('DB_NAME') ? null : define('DB_NAME', 'lmnop');
?>
Sonra initialize.php
ki benim define()
sabitleri tüm tutan ve benim sınıflarının tüm çağrıları var.
<?php
// Define core paths
// DIRECTORY_SEPARATOR is a PHP pre-defined constant
// (\ for Windows, / for Unix)
defined('DS') ? null : define('DS', DIRECTORY_SEPARATOR);
defined('SITE_ROOT') ? null : define('SITE_ROOT', 'http://...etc');
defined('LIB_PATH') ? null : define('LIB_PATH', SITE_ROOT.'/_includes');
// load config file first
require_once(LIB_PATH."/config.php");
etc...
?>
Şimdiye kadar, çok iyi. (Ben btw, bilerek URL'leri değil DIR yolları kullanıyorum.)
Ben bir sorgu çalıştırmak için bir test.ph
p sayfa oluşturduğunuzda Ama, ben DB_SERVER bulunmazsa bir hata alıyorum. I config.php
şey yankı ve test.php
üzerindeki sayfanın üst kısmında görünecektir, bu yüzden config.php
dosyasını arıyor. Ve burada gerçek çılgın vurucu:
I config.php
her şeyi kopyalamak ve initialize.php
yapıştırın zaman, sorgu eserleri ... Bir şey değişmez, ve sonra config.php
dosyayı yorum yok . Nedense bu beni config.php
adlı bu değişken tanımları çekin izin vermez.
Herkes neden herhangi bir fikrin var mı?