Працягваецца праца (павольна) на маім новым Twitter -прыкладанні. За наступныя некалькі святаў я спадзяюся атрымаць імпульс зноў працягваецца па праекце (у Нягледзячы выдатная надвор'е ў цяперашні час). Ва ўсякім выпадку, мая наступная задача складалася ў стварэнні аўтэнтыфікацыі адаптар для Zend Framework . Я правёў рабочую Увайсці рэалізацыі, але з падзеннем Auth адаптар для Zend Framework здаваўся прывабным прапановай, таму я стварыў яго ....
(Я не збіраюся ісці праз OAuth або рэгістрацыі прыкладанні з Twitter, ёсць сотні кіраўніцтваў і даволі просты працэс ва ўсякім выпадку.)
Працягнуць чытанне "OAuth / Twitter Auth адаптар для Zend Framework" »
Артыкулы , PHP , вэб-праграмаваньне , Zend Framework , Zend_Auth , Zend_Auth_Adapter , Zend_Oauth , Zend_Oauth_Consumer |
адаптар , аўтарызацыі , аўтэнтыфікацыі , OAuth , PHP , Twitter , Zend , Zend Framework , Zend_Auth_Adapter_Interface , Zend_Auth_Result , Zend_Oauth_Consumer , Zend_Session , ZF
Гэта паведамленне хутка пакажа вам, як наладзіць проксі з базавай аўтэнтыфікацыі з дапамогай Apache .
У маім выпадку я хацеў бы мець перадачы кліенту торэнт трохі даступныя праз Інтэрнэт, каб я мог праверыць на стан і adminster торэнтаў (такія як апошнія Fedora-рэліз) па меры неабходнасці. Перадача сама запусціць свой вэб-кліента на порт 9091 па змаўчанні. Замест таго, каб турбавацца адкрыцця дадатковых партоў на мой брандмауэр і даданне nessecary правілы пераадрасацыі порта я вырашыў, што я толькі што проксі званкоў да перадачы праз Apache выкарыстаннем mod_proxy .
Працягнуць чытанне "Apache з проксі-аўтэнтыфікацыя" »
Apache , вылічальнай |
Apache , аўтарызацыі , аўтэнтыфікацыі , асноўныя , htpasswd , mod_auth , mod_auth_digest , mod_proxy , проксі , віртуальны хост
Нягледзячы на ўсе Twitter нянавісці ў дадзены момант, я вырашыў стварыць новую Twitter -прыкладанні. Будучы чалавекам, які кіруе некалькімі рахункамі (як асабістыя, так і для маёй дабрачыннай дзейнасці) Я быў якія маюць патрэбу інструмент для калісьці, што я проста абыйсці ў пісьмовай форме (больш таго, што ў найбліжэйшай будучыні ...).
Я чытаў на Zend_Oauth_Consumer і як ён можа быць выкарыстаны для атрымання дазволу для працы з Twitter выкарыстаннем ААТ . Усё добра, у мяне ёсць ключ доступу, і я магу весела паведамленні прэч ад імя карыстальніка. Там ёсць шмат рэсурсаў, там, каб зрабіць гэта так, я не буду стамляць людзей.
Наступным крокам было, каб дазволіць людзям вярнуцца на вэб-сайце, увайсці ў сістэму і змяніць свой рахунак. Тут я дасягнуў невялікая праблема. Выкарыстаньне прыкладаў кода на вэб-сайтах азначала, што я б Twitter прасіць у мяне дазволу доступу для кожнага зноў Увайсці, не добра. Сканіраванне праз рамкі я не мог бачыць нічога, што дазволіла б мне проста запытаць аўтэнтыфікацыю. Гэта не значыць, яе не існуе, але, здавалася, не будзе механізму праверкі сапраўднасці, якія могуць быць выкліканыя не ведаючы маркер доступу ўжо.
Альтэрнатывы для рэалізацыі на аснове сайтаў ўвайдзіце або як-то захоўваць доступу карыстальнікаў маркер на кліента (з шыфраваннем, вядома). Ні адзін з гэтых, здавалася, як добрае / зручны рашэнне.
Працягнуць чытанне "Увайсці з Twitter" з выкарыстаннем Zend Framework "»
Артыкулы , PHP , вэб-праграмаваньне , Zend Framework , Zend_Oauth , Zend_Oauth_Consumer |
прыкладанняў , аўтэнтыфікацыя , аўтарызацыя , рамкі , OAuth , PHP , Увайсці з Twitter , маркер , Twitter , Zend , Zend Framework , Zend_Oauth , Zend_Oauth_Consumer
Рэзюмэ
Гэта хуткая пошта, каб абмеркаваць даволі просты памочнік выгляду я створана для аказання Zend Framework стыль прагляду файла, толькі калі яна існуе. Наогул просьбай аказаць код файла, які не існуе выдасць выключэнне. Таму я стварыў абалонку для Zend_View:: Render () метад, які вызначаецца, ці існуе файл, і калі так робіць, інакш проста вяртае пустую радок.
Працягнуць чытанне 'Zend Framework: Render Калі існуе "»
Вылічальны , PHP , вэб-праграмаваньне , Zend Framework , Zend_View , Zend_View_Helper |
класа , рамкі , HTML , PHP , аказваюць , меркаванне , памочнік выгляду , Zend , Zend Framework , Zend_View , Zend_View_Helper_Abstract
З афіцыйным рэлізам ад Zend Certified Engineer (ZCE) праграмы для 5,3 Я думаў, што я даю сваё хуткае ўражанне, што я думаў пра іспыт.
Трохі перадгісторыі аб сабе: я ўпершыню пазнаёміўся з PHP каля 7 гадоў таму і працаваў прафесійна ў PHP з 2006 года. Зараз я працую для захапляльных запуску называецца Brightpearl заснаваная ў Брыстолі, Вялікабрытанія , вырабляць інтэграваныя CRM, бухгалтарскія і электроннай камерцыі праграмнага забеспячэння. Я не раней атрыманых любым з папярэдніх кваліфікацый ZCE. Я ў цяперашні час развіваюцца ў серыі 5.2.x і сапраўды не скарыстаўся ні адным з канкрэтных асаблівасцяў 5,3 (Я чакаю Zend Framework 2 і дактрына 2) у сваіх праектах развіцця.
Працягнуць чытанне 'Zend Certified Engineer (ZCE) 5,3 "»
Артыкулы , сертыфікацыі , вылічальных , навіны аб працы , PHP |
5,3 , бэта- , сертыфікацыі , экзамен , PHP , PHP 05/03 , кваліфікацыі , zce , zce 5,3 , Zend , Zend сертыфікаваны інжынер
Фота з http://www.flickr.com/photos/daniello/
Рэзюмэ
Тут я абмяркоўваю стварэнне View Helper для змены HTML тэгаў, і, больш канкрэтна цела тэгаў. Створаны View Helper дазваляе функцыянальнасць, аналагічную галаву * / InlineScript памочнікаў ўжо ў стандартнай Zend Framework памочнікаў гледжання, але дазваляе праграмнай мадыфікацыі атрыбутаў тэга. Вызначана праверыць дэма-старонкі і код на GitHub.
Матывацыя
Стандартных памочнікаў Zend Framework гледжання вялікі набор інструментаў для рацыяналізацыі паўсядзённых задач, прагляду і ўліку змены / дадання скрыптоў і загалоўка блока (як правіла, якая адбылася ў макеце) знутры прагляд без ужывання выродлівыя хакі (г.зн. галава * / InlineScript памочнікаў).
З нагоды я выявіў, неабходна ўнесці змены ў <body> тэгі, напрыклад, уключыўшы пад нагрузкай , клас або атрыбут стылю і г.д. Я таксама павінны быць у стане выканаць гэта з іншых памочнікаў гледжання. Вазьміце гэта наступным надуманы прыклад ...
На сайце X, некаторыя старонкі ўтрымліваюць стандартныя додзе формы. Гэтыя додзе формы праводзіцца ў рамках памочнікаў для выгоды. Наогул было вырашана не ўключаць у додзе CSS класаў у целе тэга і толькі дадаць іх у выпадку неабходнасці. Там, можа быць некалькі памочнікаў на старонкі, якія неабходна дадаваць свае ўласныя атрыбуты цела тэга. (Я сказаў, што гэта надуманы)
Код можна знайсці ў маёй ЖКТ сховішча @ GitHub і дэманстрацыйнай старонкі .
Працягнуць 'чытаць' Zend Framework цела тэга View Helper »
PHP , вэб-праграмаваньне , Zend Framework , Zend_Registry , Zend_View_Helper |
Цела , рамкі , памочнік , HTML , PHP , меркаванне , памочнік выгляду , Zend , Zend Framework , Zend_Registry , Zend_View_Helper , Zend_View_Helper_Placeholder_Container_Standalone
Залежнасць ін'екцыі тэхніка, якая дазваляе слаба звязаных аб'ектаў у праграмным дадатку. Наогул, калі аб'ект патрабуе доступу да функцыянальнасці іншага было б асобнік ўнутрана вядучых жорстка звязаных сістэмах. Да рэалізацыі Dependency Injection мы ўводзім патрэбныя аб'екты гатовыя да выкарыстання (часам таксама завецца інверсіяй кантролю - МАК). Разгледзім наступны прыклад:
<? PHP
твар, якое прымае рашэння класа {
грамадскага makeDecision функцыі (масіў $ параметраў) {
/ / Вам патрэбныя адаптара БД
$ DP = новы DecisionParameters ();
$ ParameterScore = $ DP-> getScore ($ параметраў);
/ * ... Яшчэ некалькі прыняцця рашэння ... * /
вяртання ($ parameterScore> 50);
}
} Гэты фрагмент кода называецца цесна звязаны з DecisionParameters аб'екта. Перапісваючы вышэй у слабосвязанных моды мы б нешта накшталт ....
<? PHP
твар, якое прымае рашэння класа {
прыватных $ _dp;
публічную функцыю __construct ($ DP) {
$ Гэтым-> _dp = $ DP;
}
грамадскага makeDecision функцыі (масіў $ параметраў) {
$ = $ ParameterScore гэтым-> _dp-> getScore ($ параметраў);
/ * ... Яшчэ некалькі прыняцця рашэння ... * /
вяртання ($ parameterScore> 50);
}
} Хоць атрыманне выгады слабосвязанных кода мы дадаем складанасці такі, што кожны раз асобніка аб'екта, мы таксама павінны асобнік яго залежнасцяў і перадаць іх у занадта. Напрыклад, гэта:
$ = Выбар новых твар, якое прымае рашэнні ();
Рэха $ выбар-> makeDecision (Array ('намаганні' => 'нізкі', 'вяртанне' => 'высокі')); Зараз становіцца:
$ DP = новы DecisionParameters ();
$ = Выбар новых твар, якое прымае рашэнні ($ DP);
Рэха $ выбар-> makeDecision (Array ('намаганні' => 'нізкі', 'вяртанне' => 'высокі')); Гэтая сітуацыя становіцца ўсё больш хваравітым, як лік залежнасцяў для класа павялічваецца, а што, калі залежнасці самі залежнасцяў? Гэта можа вельмі хутка стаць кашмарам аб'екта адміністрацыі! Калі ласка, увядзіце кантэйнераў ін'екцыі залежнасцяў (або структуры) ...
Працягнуць чытанне "Хуткі старт Symfony DI (Dependency Injection) Падручнік" »
Артыкулы , Dependency Injection кантэйнера , PHP , Symfony , Zend Framework , Zend_Cache |
кэш , кантэйнер , ін'екцыі залежнасцяў , ды , рамкі , INI , інверсіі кіравання , МАК , бібліятэка , PHP , Symfony , XML , YAML , Zend , Zend Framework , Zend_Cache
У гэтым артыкуле я гляджу на выкарыстанні Zend_Layout і Zend_View разам з простымі фронт-кантролера, каб паказаць, як можна пачаць падзяляюць бізнэс-логікі і прадстаўлення ў вашым дадатку. Усе коды даступныя на GitHub:
Голы Zend_Layout і Zend_View на GitHub .
Артыкулы , PHP , вэб-праграмаваньне , Zend Framework , Zend_Layout , Zend_View |
прыкладання , рамкі , памочнік , PHP , памочнік выгляду , Zend , Zend Framework , Zend_Layout , Zend_View
Як прытрымлівацца да майго папярэдняга паста на кожны модуль заснаваны налады макета для Zend Framework , я абнавіў код патрабуе менш канфігурацыі, чым раней (не тое, што ён патрабуе больш, што некалькі радкоў у канфігурацыі дадатку!).
Працягнуць чытанне 'Zend Framework на модуль налады афармлення - Follow Up "»
Артыкулы , вылічальных , PHP , вэб-праграмаваньне , Zend Framework |
дзеянні , кантролера , рамкі , памочнік , макет , модуль , PHP , Zend , Zend Framework
Гэта можа здацца простым, але я стукаў галавой спрабуе стварыць URL у карыстацкім памочнік віду ў Zend Framework . Я маршрутызацыі ўсталёўніка, які атрымлівае модуль з суб-дамен у выкарыстанні, таму я не мог бы выкарыстаць просты жорстка URL.
Працягнуць чытанне "Стварэнне URL у Zend карыстацкага View Helper" »
Артыкулы , PHP , вэб-праграмаваньне , Zend Framework , Zend_View , Zend_View_Helper |
звычай , рамкі , фронт-кантролер , дапаможныя , PHP , маршрутызатар , гледжання , Zend , Zend Framework , Zend_View_Helper_Abstract