Содержание
- 2. Yii – PHP Framework ООП Модульность Простота Высокое быстродействие Основные характеристики:
- 3. Prado Ruby on Rails jQuery Symfony Joomla Истоки Yii:
- 4. Магия в PHP class Component { public $publicProperty; protected $_protectedProperty; public function setProtectedProperty($value) { $this->_protectedProperty =
- 5. class Component { public function __get($propertyName) { $methodName = 'get'.$propertyName; if (method_exists($this, $methodName)) { return call_user_func(
- 6. $component = new Component(); $component->publicProperty = 'Public value'; echo($component->publicProperty); $component->protectedProperty = 'Protected value'; echo($component->protectedProperty);
- 7. Автозагрузка классов require_once('components/SomeClass.php'); $someObj = new SomeClass(); … require_once('components/OtherClass.php'); $otherObj = new OtherClass(); … require_once('components/SomeClass.php'); $anotherSomeObj
- 8. class Autoloader { public function autoload($className) { $classFileName = ‘components/'.$className.'.php'; if (file_exists($classFileName)) { require_once($classFileName); return true;
- 9. Автозагрузка классов в контексте Yii: Yii::import(‘application.components.SomeClass'); Yii::import(‘application.components.OtherClass'); … $someObj = new SomeClass(); ‘SomeComponent’ => ‘/home/www/…/components/SomeClass.php’, ‘OtherComponent’
- 10. Порождение компонентов function createComponent(array $componentConfig) { $className = $componentConfig['class']; if (empty($className)) { throw new Exception(‘Missing parameter
- 11. $componentConfig = array( 'class'=>'CUrlManager', 'urlFormat'=>'path', 'showScriptName'=>false, 'rules'=>array( '/'=>'site/index', ' / *'=>' /view', ), ); $component =
- 12. Фабрика компонентов
- 13. Одиночка (Singleton) class Singleton { private static $_selfInstance = null; public static function getInstance() { if
- 14. Фабрика компонентов(Component Factory) + Одиночка (Singleton) = Приложение Yii (Yii Application)
- 15. $config = array( 'name'=>'My Web Application', … 'components'=>array( 'user'=>array( 'allowAutoLogin'=>true, ), … ), ); Yii::createWebApplication($config)->run(); …
- 16. MVC в Yii
- 17. Маршрутизация web запроса
- 18. Доступ к базе данных через PDO
- 19. Абстракция базы данных
- 20. Active Record
- 21. $allUsers = User::model()->findAll(); $newUser = new User(); $newUser->name = ‘new user’; $newUser->save(); $existingUser = User::model()->findByName(‘testuser’); $existingUser->email
- 22. События (Events) в Yii
- 23. function handleBeforeSave(CEvent $event) { $sender = $event->sender; // Изменяем состояние отправителя события: $sender->create_date = date('Y-m-d H:i:s',
- 24. Проблема множественного наследования
- 25. Поведение (Behavior)
- 26. class ArBehaviorExample extends CBehavior { public function behaviorMethod() { $owner = $this->getOwner(); $owner->create_date = date('Y-m-d H:i:s',
- 28. Скачать презентацию