Я пытаюсь использовать здесь две функции:
Код: Выделить всё
function getEntries () {
require_once("mysqliVariables.php");
$mysqli = new mysqli($dbHost, $dbUname, $dbPwd, $dbName);
$sql = "statement...";
$result = $mysqli->query($sql) or die($mysqli->error);
echo $dbHost; // prints host
return $result;
}
function getBiggestMonth () {
require_once("mysqliVariables.php");
$mysqli = new mysqli($dbHost, $dbUname, $dbPwd, $dbName);
echo $dbHost; // prints nothing! why?
$sql = "statement...";
$result = $mysqli->query($sql) or die($mysqli->error); // this line does not run, of course.
return $result;
}
Код: Выделить всё
function listTasks() {
require_once("db/mysqliFunctions.php");
// Get entries using mysqli.
$tasks = getEntries();
echo "
";
var_dump($tasks);
echo ""; // program works fine this far.
$bm = getBiggestMonth(); // program breaks somehow during this function call.
Код: Выделить всё
Если я переключу порядок вызова функции, то getBiggestMonth() будет работать нормально, а другой — нет. Кроме того, все это работало[/b] нормально, когда все файлы находились в одной папке (тогда функции были статическими функциями внутри класса, но это не должно быть проблемой, здесь сохраняется та же проблема), поэтому я не понимаю, как здесь может быть другая область видимости переменных, и require_once должен позаботиться о других вещах. Помочь?
Подробнее здесь: [url]https://stackoverflow.com/questions/9524152/require-once-doesnt-seem-to-affect-all-functions[/url]
Мобильная версия