[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Трабл с выносом класса в отдельный файл
N0ob
Собственно существует класс со статическими переменными. Допустим я вставил этот класс в начале файла и сразу же после него идет вызов переменной из этого класса. Решил вынести этот класс в отдельный файл. Вынес! Вместо перед выводом переменной на заинклюдил этот файл и выводит такую бяку:
Цитата
Fatal error: Access to undeclared static property: Core::$var in.......

Когда выводил без подключения класса из стороннего файла все было тип-топ. В файле ничего постороннего нет. Только один класс. В чем может быть проблема?
Игорь_Vasinsky
Цитата
вызов переменной из этого класса.

наверно всё же свойства)
Цитата

Когда выводил без подключения класса из стороннего файла все было тип-топ.


ничё не понял, у тебя ранее авторегистер был?

покажи пример чтоли?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
N0ob
index.php
<?php

error_reporting(-1);

define("KEY", true);
define("PATH", $_SERVER['DOCUMENT_ROOT']);

include './system/core.php';


if(Core::$_config['mode'] == 0)
{
ini_set('display_errors', 1);
} else {
ini_set('display_errors', 0);
set_error_handler('Error::PHP');
}

spl_autoload_register('Core::autload');

header('Content-Type: text/html; charset='.Core::$_config['charset']);
setlocale(LC_ALL, Core::$_config['locale']);

mb_internal_encoding(Core::$_config['mb_internal_encoding']);
mb_regex_encoding(Core::$_config['mb_regex_encoding']);

date_default_timezone_set(Core::$_config['timezone']);

session_start();

echo "Hello, world";


core.php
<?php if(!defined('KEY')) {header("Location: /404.html"); die();}

class Core {
public static $_config = array(
'mode' => 0, //0 - developer, 1 - used
'mb_reges_encoding' => 'utf-8',
'mb_internal_encoding' => 'utf-8',
'charset' => 'utf-8',
'locale' => 'ru_RU.UTF-8',
'time_zone' => 'Europe/Moscow',
'default_tpl' => 'main.tpl',
'DRIVERS' => array(),
'MODULES' => array(),
'PAGES' => array(
'messages',
'friends',
'photos',
'jobs',
'work',
'support',
'help'
)
);


public static $var = 'echo';


public static function autoload($classname)
{
$drivers = Core::$_config['DRIVERS'];
$modules = Core::$_config['MODULES'];
if(in_array($classname, $drivers)){
require_once PATH . "/system/drivers/" . $classname . ".php";
}else if(in_array($classname, $modules)) {
require_once PATH . '/system/modules/' . $classname . '.php';
} else {
exit("Error");
}
}
}
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.