Skip to content

Commit 61e2ad1

Browse files
committed
Trait
1 parent f2aba93 commit 61e2ad1

File tree

3 files changed

+24
-1
lines changed

3 files changed

+24
-1
lines changed

app/App.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
namespace app;
44

55
use liw\core\Application;
6+
use liw\core\Validator;
67

78
/**
89
* Это финальный класс.
@@ -12,6 +13,7 @@
1213
*/
1314
final class App extends Application
1415
{
16+
use Validator;
1517

1618
public function __construct()
1719
{

vendor/liw/core/Validator.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<?php
2+
3+
namespace liw\core;
4+
5+
/**
6+
* Это trait его можно подключить в любом классе.
7+
* количество подключенных трейтов не ограниченно.
8+
*
9+
* Class Validator
10+
* @package liw\core
11+
*/
12+
trait Validator
13+
{
14+
public function validate($var)
15+
{
16+
echo 'Моя задача проверить валидность значения переменной: ' . $var . '<br>';
17+
}
18+
}

web/index.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,8 @@
2222
// регистрируем автозагрузчик
2323
$loader->register();
2424

25-
// создали новый объект класса, теперь соответствующий файл загрузится автоматически
25+
// создали новый объект класса
2626
$app = new \app\App();
27+
28+
// имеем доступ к свойству, добавленному при помощи trait-а
29+
$app->validate('Какая-то переменная');

0 commit comments

Comments
 (0)