मैं एक php परियोजना की स्थापना की प्रक्रिया में हूँ शामिल हैं, लेकिन कैसे ठीक php का उपयोग करने से परिचित नहीं हूँ शामिल/आदेशों की आवश्यकता है। मेरे लेआउट वर्तमान में इस तरह दिखता है:PHP फ़ाइल रणनीति की जरूरत
/public --apache points into this directory
/public/index.php
/public/blah/page.php
/utils/util1.php -- useful classes/code are stored in other directories out here
/dbaccess/db1.php
dbaccess/db1.php
require '../utils/util1.php
सार्वजनिक/index.php
require '../dbaccess/db1.php'
सार्वजनिक/blah/page.php
require '../../dbaccess/db1.php'
समस्या php से है 'शामिल' प्रलेखन:
अगर फ़ाइल नाम से शुरू होता है ./ या ../, यह देखता है केवल वर्तमान कार्यशील निर्देशिका में
तो सार्वजनिक/blah/page.php में विफल रहता है, क्योंकि यह dbaccess/db1.php जो ऊपर चल रही है जब यह util1.php शामिल करने के लिए कोशिश करता है शामिल हैं घ। यह विफल रहता है, क्योंकि यह रिश्तेदार पथ है,/सार्वजनिक/blah/मूल स्क्रिप्ट से है dbaccess से नहीं
यह सुंदर बेवकूफ लगता है - db1.php सिर्फ जानना चाहता है जहां यह शामिल किया जा रहा है, जो काम करने के लिए नहीं जा रहा है है ।
मैं इस तरह की रणनीतियों को देखा है:
require_once dirname(__FILE__) . '/../utils/util1.php');
जाहिरा तौर पर काम करता है कि के बाद से अब पथ एक पूर्ण पथ है, लेकिन सिर्फ मेरे लिए वास्तव में विचित्र लगता है।
क्या यह सामान्य है? मुझे लगता है कि पथ जारी रखना चाहिए या मैं यहाँ कुछ स्पष्ट याद आ रही है?
मैं करने के लिए बहुत नहीं मिला है यह कहना छोड़कर जोड़ें कि मैं 5 साल से PHP का उपयोग कर रहा हूं और यह बात * अभी भी * मुझे भ्रमित करती है। – nickf