2017-10-05 3 views
0

私は以下のファイル構造を持っています。ヘッダーテンションファイルにPHPファイルを含めます

config.php 
header.php 
page.php 
footer.php 

header.phpheader.phpを含むconfig.phpファイルを含み、そしてpage.php

header.phpの

include ('config.php'); 

page.php:

include ('header.php'); 
include ('footer.php'); 

これでpage.phpconfig.phpにある機能にアクセスしたい場合は、config.phpの機能にアクセスできないためエラーとなります。

config.phpファイルをpage.phpに含めると動作します。しかし、このようにして、各ページにそのファイルを含める必要があります。

ファイルをheader.phpファイルに含めることができますので、各ページに含める必要はありません。

編集: config.phpのは非常に単純であり、唯一の接続文字列を持っています。 config.phpの中

define('SOME_CONSTANT', 'xxx'); 

try { 
    $db = new PDO("odbc:Driver="..);   
} catch(PDOException $e){ 
    echo $e->getMessage(); 
    die(); 
} 
+0

config.phpを表示することができます – iCoders

+0

あなたが言ったことに基づいて、関数が名前空間でない限り、それはあなたが望むように動作するはずです。 – Starx

+0

デフォルトでは、 'page.php'に' config.php'の関数を使用できるはずです。使用しているPHPのバージョンは?また、後で問題に遭遇するので、 'include'の代わりに' include_once'を使うべきです。あなたが 'header.php'と' page.php'の両方に 'config.php'をインクルードする必要があると述べたので、それを2度インクルードします。時には問題を引き起こすこともあります。 –

答えて

0

あなたの機能が

例: config.phpの

パブリック関数FUNC_NAME(){

// code 
パブリックである必要があります。ここではコンテンツがあります

}

+0

これはconfig.phpにクラスがあると仮定しています。 – mega6382

+0

config.phpファイルにはdb接続文字列しかありません。私はその質問を編集した。 – sam

関連する問題