PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (14): В начало « ... 2 3 4 5 [6] 7 8 9 10 ... » В конец

> Найдено сообщений: 198
qtk Отправлено: 28 Августа, 2013 - 21:02:48 • Тема: Стоит ли использовать isset() и empty() для проверки переменных? • Форум: Вопросы новичков

Ответов: 15
Просмотров: 649
Достаточно ли надежность такого способа:
PHP:
скопировать код в буфер обмена
  1.  
  2. $a=null;
  3. if(!$a)
  4. {
  5.     //тут код выполнения
  6. }
  7.  

то есть ни каких isset() и empty() или же лучше их использовать?
qtk Отправлено: 19 Августа, 2013 - 20:07:24 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
Да да я в курсе этого метода, так же можно просто передать путь в Url
test.ru/?cl=\classes\app\controller\Main
только не уверен на сколько это правильно и безопасно
qtk Отправлено: 19 Августа, 2013 - 19:47:42 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
Нет вы меня не поняли, у меня нет проблем с загрузкой классов через лоадер! Проблема в том как создать экземпляр полученный динамически используя псевдонимы.
qtk Отправлено: 19 Августа, 2013 - 19:23:34 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
avtor.fox пишет:
PHP:
скопировать код в буфер обмена
namespace CORE;
 
class INITIAL{
 
        public static function autoloader($c)
        {
                $f = strtolower(str_replace('\\', '/', $c)).'.c.php';
                if(file_exists($f)){
                        require_once initial::BASE.$f;
                }
                else throw new \Exception('Error message');
        }
       
}


index.php
PHP:
скопировать код в буфер обмена
namespace CORE;
require_once 'file is autoload';
spl_autoload_register('CORE\INITIAL::autoloader');


урезан до невозможности. рабочий.

Простите-это что? И что конкретно работает?
qtk Отправлено: 19 Августа, 2013 - 18:56:01 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
caballero пишет:
перепиши код по человечески тогда устроит

никто не клеит пространства в автолоаде и тем более использует адиасы

причем тут мой лоадер
qtk Отправлено: 19 Августа, 2013 - 18:18:05 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
Саныч пишет:
когда мы конкатенируем псевдоним, получаем ошибку Class not found, если же прописать сразу namespace, все ОК.

Я то же так пробовал, но меня это не устраивает
(Добавление)
EuGenМожно плиз рабочий код,я все перепробовал с псевдонимом никак
qtk Отправлено: 19 Августа, 2013 - 18:12:00 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
То что в пространстве classes\app\controller находится по пути classes/app/controller, это я тут для наглядности все в один фаил определил
qtk Отправлено: 19 Августа, 2013 - 17:56:41 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
примерно так:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. namespace classes\app\controller;
  3. class Web
  4. {
  5.     public function _get()
  6.         {
  7.             return 200;
  8.         }
  9. }
  10.  
  11. namespace classes;
  12. class Autoload
  13. {  
  14.     public static function runLoader()
  15.         {
  16.         spl_autoload_register(array('self','loaderClass'));
  17.     }
  18.     private static function loaderClass($class)
  19.         {
  20.             $file=ROOT.$class.'.php';
  21.             $file=str_replace(DIRECTORY_SEPARATOR,'/',$file);
  22.                 require_once $file;
  23.     }
  24. }
  25.  
  26. use classes\app\controller as AppC;
  27. define ('ROOT',$_SERVER['DOCUMENT_ROOT'].'/');
  28. Autoload::runLoader();
  29. $class='\\AppC\\'.$_GET['cl'];
  30. $odj=new $class;
  31. echo $obj->_get();
  32. ?>
qtk Отправлено: 19 Августа, 2013 - 17:29:52 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
caballero пишет:
хочешь искать в текущем пространствке имен - убери слеш в начале
скрипт не понимает что это алиас APP
qtk Отправлено: 19 Августа, 2013 - 17:01:28 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
EuGen пишет:
$sName = '\\APP\\'.$class;
$rObj  = new $sName;

не работает!
Псевдоним не преобразуется и лоадер ищет фаил в \APP\, а не в classes\app\controller
qtk Отправлено: 19 Августа, 2013 - 07:19:31 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
Просто опечатался тут, извените!
qtk Отправлено: 18 Августа, 2013 - 22:32:47 • Тема: Проблема при создании динамического класса при использовании пространственных имен • Форум: Объектно-ориентированное программирование

Ответов: 28
Просмотров: 4349
Такая проблемка, пытаюсь создать экземпляр класса. Имя класса получаю динамически, класс находится в пространстве имен classes\app\controller.
Все это вызывается во фронт контроллере.
$class-имя класса.
Во фронт контроллере сделал псевдоним:

Как дальше объявить экземпляр класса без ошибок, типа:

Спасибо за понимание и ответ!!!
qtk Отправлено: 29 Июля, 2013 - 22:34:33 • Тема: как подключить список псевдонимов на странице • Форум: Объектно-ориентированное программирование

Ответов: 2
Просмотров: 684
Спасибо!
qtk Отправлено: 29 Июля, 2013 - 22:02:34 • Тема: как подключить список псевдонимов на странице • Форум: Объектно-ориентированное программирование

Ответов: 2
Просмотров: 684
К примеру в файле index.php вызываются все контроллеры и все прочее... Есть псевдонимы пространств:
PHP:
скопировать код в буфер обмена
  1.  
  2. use classes\controller as controller;
  3. use classes\model as model;
  4.  

если все это написать в index.php то все работает, но если пытаться подключить отдельным файлом через include, require то не работает. Как быть? Спасибо!
qtk Отправлено: 26 Июля, 2013 - 05:54:23 • Тема: Обновление PHP путем замены файлов • Форум: Apache и другие веб-серверы

Ответов: 9
Просмотров: 642
Типо того) нокиа с симбой 9.3

Страниц (14): В начало « ... 2 3 4 5 [6] 7 8 9 10 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB