В A.php
я включаю config.php
и B.php
:
include_once("path/to/config.php");
include_once("path/to/B.php");
B.php
— это общий скрипт, используемый другими скриптами. Я не знаю, включал ли сценарий, который включал B.php
, также config.php
, поэтому в B.php
есть
include_once("path/to/config.php");
Проблема в том, что в A.php
я могу прочитать все переменные из config.php
, а в B.php
они не заданы. Если я сделаю print_r(get_included_files())
в B.php
, я увижу, что config.php
включено.
Чем это вызвано? Как я могу правильно включить этот config.php
, чтобы он был доступен в B.php
(и других сценариях, включенных A.php
...)?
РЕДАКТИРОВАТЬ: добавлено содержимое скриптов.
config.php
:
<?php
$db_ip = "";
$db_login="";
$db_pass ="";
$db_port = 30050;
$db_name_hlstats = "";
$db_name_csgo = "";
$db_name_report = "";
$db_web_host = "";
$db_web_port = "3306";
$db_web_login = "";
$db_web_pass = "";
$db_web_name = "";
B.php
:
<?php
function GetServers()
{
include_once("/data/web/virtuals/93680/virtual/config/config.php");
include_once("/data/web/virtuals/93680/virtual/scripts/getPDO.php");
include_once("/data/web/virtuals/93680/virtual/scripts/PDOQuery.php");
print_r(get_included_files()); // shows config.php in included files
echo "servers.php | $db_ip:$db_port"; // variables show nothing
$pdo = getPDOConnection($db_ip, $db_login, $db_pass, $db_name_csgo, $db_port);
$query = "SELECT ...";
$result = getPDOQueryResult($pdo, $query, __FILE__, __LINE__);
$res = array();
foreach ($result as $row)
{
$res[$row["server_id"]] = $row;
}
return $res;
}
config.php
иB.php
? - person Get Off My Lawn   schedule 28.10.2015path/to/path/to/config.php
, который не является файлом. - person cmorrissey   schedule 28.10.2015config.php
- переменные (имя хоста БД и т.д.).B.php
- одна функция. - person jirinovo   schedule 28.10.2015