Голосование
Какую CMS Вы предпочитаете
AtomX
Fapos CMS
Drunya CMS
Топ новостей
- Генератор аватарок в стиле пиксель-арт
- Скачать Fapos CMS 1.1.8 Бесплатно
- Цунами в Японии. Последствия.
- Предварительная инфа о FAPOS 1.1.9. Часть 2
- Описание версии CMS Fapos 0.9.9
- Новая версия Fapos 1.3
- Половина россиян не смогла отличить легальный контент
- Что есть Fapos CMS
- Убийца Apache у вас на пороге
- Открытое тестирование Fapos 0.9.9
Последние комментарии
Топ пользователей
Сайты на AtomX CMS
Признаться, по правде, я думал, что в PHP 5.4 просто по латают дырки и добавят пару функций. Ну конечно же оптимизируют объектную часть, так как PHP превращается из шаблонизатора в настоящий язык программирования и без ООП ну никак. Но недавно узнал о новой языковой конструкции, которая меня просто поразила.
Это напомнило мне, чем то goto, но все же это не совсем оно. И я даже уже придумал кучу примеров где такая конструкция может быть весьма полезна.
На данный момент, даже в Fapos есть места, где было бы очень правильно использовать данную возможность.
Представляю вам trait.
Сразу пример из документации:
Ну разве не мило? Можно подключать любой код, даже части классов. Я был очень удивлен такому новшеству и очень рад, что оно появилось.
Вот еще пример:
Это напомнило мне, чем то goto, но все же это не совсем оно. И я даже уже придумал кучу примеров где такая конструкция может быть весьма полезна.
На данный момент, даже в Fapos есть места, где было бы очень правильно использовать данную возможность.
Представляю вам trait.
Сразу пример из документации:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php trait ezcReflectionReturnInfo {
function getReturnType() { /*1*/ }
function getReturnDescription() { /*2*/ }
}
class ezcReflectionMethod extends ReflectionMethod {
use ezcReflectionReturnInfo;
/* ... */
}
class ezcReflectionFunction extends ReflectionFunction {
use ezcReflectionReturnInfo;
/* ... */
}?>
Ну разве не мило? Можно подключать любой код, даже части классов. Я был очень удивлен такому новшеству и очень рад, что оно появилось.
Вот еще пример:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php class Base {
public function sayHello() {
echo 'Hello ';
}
}
trait SayWorld {
public function sayHello() {
parent::sayHello();
echo 'World!';
}
}
class MyHelloWorld extends Base {
use SayWorld;
}
$o = new MyHelloWorld();
$o->sayHello(); //выведет Hello World!?>
Сейчас online: 50. Зарегистрированных: 1. Гостей: 49.
AtomX 2.8 Beta - Новая версия бесплатной CMS
AtomX 2.8 Beta - Новая версия бесплатной CMS
Программирование - что может быть проще.
Программирование - что может быть проще.
AtomX 2.8 Beta - Новая версия бесплатной CMS
AtomX 2.8 Beta - Новая версия бесплатной CMS
Написание простого вируса в блокноте
Что такое API и для чего они нужны
Классы в PHP для чайников
Написание простого вируса в блокноте