क्लास \ Magento \ Framework \ Filesystem \ DirectoryList रूट, मीडिया, var आदि जैसे पथ प्राप्त करने के लिए उपयोग किया जाता है
इससे आपके प्रोजेक्ट की रूट डायरेक्टरी इस तरह मिलेगी
/ Var / www / html / MyProject
ObjectManager द्वारा
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$directory = $objectManager->get('\Magento\Framework\Filesystem\DirectoryList');
echo $rootPath = $directory->getRoot();
निर्भरता इंजेक्शन द्वारा
protected $_dir;
...
public function __construct(
...
\Magento\Framework\Filesystem\DirectoryList $dir,
...
) {
...
$this->_dir = $dir;
...
}
जैसे अन्य निर्देशिका पथ प्राप्त करें
$this->_dir->getRoot(); // Output: /var/www/html/myproject
$this->_dir->getPath('media'); // Output: /var/www/html/myproject/pub/media
$this->_dir->getPath('pub'); // Output: /var/www/html/myproject/pub
$this->_dir->getPath('static'); // Output: /var/www/html/myproject/pub/static
$this->_dir->getPath('var'); // Output: /var/www/html/myproject/var
$this->_dir->getPath('app'); // Output: /var/www/html/myproject/app
$this->_dir->getPath('etc'); // Output: /var/www/html/myproject/app/etc
$this->_dir->getPath('lib_internal'); // Output: /var/www/html/myproject/lib/internal
$this->_dir->getPath('lib_web'); // Output: /var/www/html/myproject/lib/web
$this->_dir->getPath('tmp'); // Output: /var/www/html/myproject/var/tmp
$this->_dir->getPath('cache'); // Output: /var/www/html/myproject/var/cache
$this->_dir->getPath('log'); // Output: /var/www/html/myproject/var/log
$this->_dir->getPath('session'); // Output: /var/www/html/myproject/var/session
$this->_dir->getPath('setup'); // Output: /var/www/html/myproject/setup/src
$this->_dir->getPath('di'); // Output: /var/www/html/myproject/var/di
$this->_dir->getPath('upload'); // Output: /var/www/html/myproject/pub/media/upload
$this->_dir->getPath('generation'); // Output: /var/www/html/myproject/var/generation
$this->_dir->getPath('view_preprocessed'); // Output: /var/www/html/myproject/var/view_preprocessed
$this->_dir->getPath('composer_home'); // Output: /var/www/html/myproject/var/composer_home
$this->_dir->getPath('html'); // Output: /var/www/html/myproject/var/view_preprocessed/html
नोट: आपको कभी भी इसका उपयोग नहीं करना चाहिए \Magento\Framework\App\ObjectManager::getInstance()
यह निर्भरता इंजेक्शन के उद्देश्य को पराजित करता है।