За последние 24 часа нас посетили 158036 программистов и 2075 роботов. Сейчас ищут 1146 программистов ...

Вложенные классы (пространства имен)

Тема в разделе "PHP для новичков", создана пользователем topas, 16 янв 2009.

  1. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    Материал откопал на http://phpclub.ru/detail/article/2002-10-25
    Раздел "вложенный классы". Автор говорит что в версии zend 2.0 поддерживается следующая конструкция:
    PHP:
    1.  
    2. <?php
    3. class DB::MySQL {
    4.     var $host = '';
    5.  
    6.     function db_connect($user) {
    7.         print "Connecting to MySQL database
    8.        '$this->host' as $user\n";
    9.     }
    10. }
    11.  
    12. class DB::Oracle {
    13.     var $host = 'localhost';
    14.  
    15.     function db_connect($user) {
    16.         print "Connecting to Oracle database
    17.        '$this->host' as $user\n";
    18.     }
    19. }
    20.  
    21. $MySQL_obj = new DB::MySQL();
    22. $MySQL_obj->db_connect('Susan');
    23.  
    24. $Oracle_obj = new DB::Oracle();
    25. $Oracle_obj->db_connect('Barbara');
    26. ?>
    27.  
    У меня zend 2.2.0, конструкция естественно не работает:
    Кто-нибудь сталкивался, или я просто торможу и автор в корне не прав?
     
  2. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Возможно, функционал был запланирован, но его так и не реализовали. Пространства имён только в версии 5.3 появились.
     
  3. Автор в корне не прав. Дальше альфа релиза это не пошло.
    Однако пространства имен будут в php/5.3 (точнее, они уже есть, но он все еще alpha)
     
  4. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    Спасибо, теперь я за свою психику спокоен... тема исчерпана полностью

    Кстати, эта статья неплохо растиражирована в рунете