1

以下のコード(実際には構成)をファイル(config.php)に記述しており、config.phpに記述されたコンテンツを別のファイル(check.php)に取得したい

config.php に記述されたコード:

<?php
$CONFIG = array (
  'id' => 'asd5646asdas',
  'dbtype' => 'mysql',
  'version' => '5.0.12',
);

コンテンツを取得するために check.php に記述されたコードは次のとおりです。

$config_file_path = $_SERVER['DOCUMENT_ROOT'] . 'config.php';
$config = file_get_contents($config_file_path);

上記のコードを使用して、出力を文字列として取得しており、それを配列に変換したいと考えていました。そうするために、私は以下のコードを試しました。

$config = substr($config, 24, -5); // to remove the php starting tag and other un-neccesary things

$config = str_replace("'","",$config);
$config_array = explode("=>", $config);

上記のコードを使用すると、次のような出力が得られます。

Array
(
    [0] =>   id 
    [1] =>  asd5646asdas,
  dbtype 
    [2] =>  mysql,
  version 
    [3] =>  5.0.12
)

これは正しくありません。

それを配列に変換する方法はありますか。serialize() を試してみましたが、 php の別のページから配列にアクセスする際に言及しましたが、成功しませんでした。

これに関するヘルプをいただければ幸いです。

4

6 に答える 6

4

あなたは必要ありませんfile_get_contents

require_once 'config.php'
var_dump($CONFIG);
于 2013-06-21T12:33:57.273 に答える
3

あなたがこれを行うだけなら、私はあなたのアプローチに非常に混乱しています:

include(config.php);

そうすれば、$CONFIG 変数が他のページで利用できるようになります。

print_r($CONFIG);

インクルード関数について説明している PHP Web サイトを参照してください。

于 2013-06-21T12:29:44.917 に答える
1

codeigniter を使用している場合は構成ファイルを含める必要はなく、$this を使用してアクセスできますが、プレーン php を使用している場合は、include() または require() または include_once() または require_once() を使用する必要があります。

于 2013-06-21T12:33:09.063 に答える
0

単純

include_file "config.php";
于 2013-06-21T12:29:09.733 に答える
0

どうしてrequire_once指令について読まないことがありますか? :)

$config = file_get_contents($config_file_path);

でなければなりません:

require_once $config_file_path;
// now you can use variables, classes and function from this file
var_dump($config);

マニュアル ページrequire_onceのリンクをたどる場合は、includeおよびについてもお読みくださいinclude_once。PHP 開発者として、これについて知っておく必要があります。初級です

于 2013-06-21T12:29:29.703 に答える