重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

表示するファイルにdefineにてパスを設定すると正常に
表示されるのですが管理が面倒なので別のファイルに
defineにてパスを設定するとエラーになってしまいます。

具体的には以下のソースです。

---Smarty/libs/path.php---
define ('SMARTY_LIBS_DIR', 'C:/Program Files/xampp/htdocs/Smarty/libs/');

---Smarty/libs/MySmarty.class.php---
require_once dirname(__FILE__) . '/Smarty.class.php';
require_once dirname(__FILE__) . '/path.php';

---Smarty/index.php---
require_once SMARTY_LIBS_DIR . 'MySmarty.class.php';

調べてみたのですが表示するファイルに指定する方法しか
みつからなかったのですが別ファイルから指定する事は
無理なのでしょうか?

A 回答 (1件)

一番はじめに require するファイルは


Smarty/index.php
ではないですか?

path.phpを読み込む前に
SMARTY_LIBS_DIR を使用しているため、未定義の定数なので、そのままの文字列で出力されてしまいます。

---Smarty/index.php---
define ('SMARTY_LIBS_DIR', 'C:/Program Files/xampp/htdocs/Smarty/libs/');
require_once SMARTY_LIBS_DIR . 'MySmarty.class.php';

ではいけないのでしょうか?

また定数でパスを指定してあげているのなら

---Smarty/libs/MySmarty.class.php---
require_once SMARTY_LIBS_DIR . '/Smarty.class.php';

の方が良いです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

今、見られている記事はコレ!