Creat Zend Comhlacht Helper Féach ar Tag

De réir Watkin Lloyd Steven , Dé Sathairn 21 Lúnasa, 2010 23:13
Photo from  http://www.flickr.com/photos/daniello/

Grianghraf ó http://www.flickr.com/photos/daniello/

Achoimre

Seo mé ag plé a chruthú ina cúntóir dearcadh do mhodhnú HTML tags, agus níos sonraithe tags chomhlacht. Chruthaigh Ceadaíonn cúntóir dearcadh an feidhmiúlacht cosúil leis an ceann * / Cúntóirí dearcadh inlineScript cheana féin sa chaighdeán Zend Creat Cúntóirí thuairim, ach is féidir leis an modhnú cláir na tréithe tag. Cinnte seiceáil amach an leathanach taispeána agus an cód ar github.

Spreagadh

Cúntóirí Zend fhonn caighdeán an Chreata sraith mhór na n-uirlisí chun tascanna a shruthlíniú agus a cheadaíonn d'fhonn triall ar an modhnú / Chomh maith leis na scripteanna agus bloic header (i gcoitinne ar siúl in an leagan amach a) ó laistigh den tuairim gan cur isteach hacks gránna (ie an ceann * / Cúntóirí inlineScript dearcadh).

Ar ócáid ​​fuair mé gá le modhnuithe a dhéanamh ar an chlib <body>, mar shampla, ag cur onload , aicme, nó etc tréith stíl freisin a cheanglaítear orm a bheith in ann seo a dhéanamh ón taobh istigh Cúntóirí dearcadh eile. Tóg mar shampla an méid seo a leanas suarach ...

Ar an suíomh idirlín X, tá leathanaigh áirithe a caighdeánacha dojo foirmeacha. Dojo na foirmeacha seo ar siúl laistigh Cúntóirí fhonn áis. Go ginearálta, tá sé cinneadh gan a chur san áireamh ar an dojo CSS ranganna sa tag gcomhlacht agus gan ach iad a chur nuair is gá. Tá roinnt d'fhonn Cúntóirí b'fhéidir ar an leathanach seo go bhfuil gá le tréithe a chur leis féin ar an chlib gcomhlacht. (A dúirt mé go raibh sé suarach)

Tá an cód ar fáil i mo GIT stór @ github agus leis an leathanach taispeána .

Conas a oibríonn sé

Nuair a chruthú d'fhonn an comhlacht cúntóir tag thuig mé go luath nach raibh an chuid is mó de chód go sonrach le cad a bhí ag forbairt mé sin tharraing mé an fheidhmiúlacht coiteann isteach i rang teibí. De réir an rang coincréitithe teibí is féidir a mhodhnú aon chlib ar an mbealach céanna, mar a pléadh an chlib comhlacht a dhéanamh anseo ar an gcód i bhfad níos mó versitile.

Thíos an cochall (mar a déarfá) go bhfuil an cód bunaithe ar an * cheann agus an dearcadh Cúntóirí inlineScript. Úsáideann sé Zend_View_Helper_Placeholder_Container_Standalone na tréithe a stóráil agus a luachanna go dtí go bhfuil siad ag teastáil. coimeádán féin Úsáideann an Zend_Registry a luachanna a stóráil faoi na príomh-sainithe sa rang (má fhéachann tú ar an t-aonad tástálacha mé soiléir ar an chlár síos i ndiaidh gach tástáil).

Ba mhaith leis an Cód i oiriúnach go maith le "an Zend_Layout Naked agus Zend_View "cód a scríobh mé faoi ar feadh cúpla seachtain ó shin nó mar chuid den chaighdeán is Zend Creat MVC shuiteáil.

Úsáid

Ba chóir an rang a bheith an-simplí a úsáid. Gcéad dul síos dá iontráil ag teastáil laistigh de do script a leagan amach mar seo a leanas:

  <? Php macalla $ seo-> bodyTag ()?>
 <? Php macalla $ seo-> bodyTag () -> toString (Pro_View_Helper_AbstractTag:: Dún)?> 

Nóta: Beidh ort a athrú ainm rang ba chóir duit féachaint ar an cúntóir aistriú go dtí do leabharlann féin. Is léir go bhfuil an leanúnach ar fáil trí chur i bhfeidhm (bodyTag) chomh maith leis an trí rang teibí.

Sampla de athruithe a dhéanamh ar do chlib chomhlacht ag baint úsáide as an cúntóir fhonn macalla myclass" class="nihilo <body style="text-align-left; width: 80em"> é:

  <? Php
 $ Seo>-bodyTag ('aicme', 'nihilo')
     -> BodyTag ('stíl', 'téacs-ailíniú: chlé')
     -> BodyTag ('stíl', 'width: 80em', bréagach, ';')
     -> BodyTag ('aicme', 'myclass')
 ?> 

Is féidir é seo a dhéanamh ar fud an comhad a tuairim, i bhfianaise Cúntóirí éagsúla, agus sa chomhad leagan amach (ar fáil ar a sula ndéantar an chlib comhlacht scríofa amach). Is féidir a bhaint Tréithe / féidir luachanna a chur leis agus ag an am céanna overwritten gceangal (Is féidir deighilteoir a chur ar aghaidh). Má tá an luach tréith chéanna rith arís agus arís eile go bhfuil aon chóip amháin ach amháin i scríbhinn leis an tréith.

I gcás ar taispeántas iomlán ceachtar forc ar an github stór agus a reáchtáil an comhad demo.php i do bhrabhsálaí féin, nó de rogha air cuairt ar an leathanach seo chun é a fheiceáil i ngníomh. Úsáid na demo.php ghlacann leis script bhfuil tú ar an Autoloader Zend (nó a leithéid) cheana féin setup.

Chruthú duit féin Tag cúntóir

A chur i bhfeidhm d'fhonn cúntóir ranga féin a leathnú ach an chlib teibí agus na hairíonna seo a leanas a scríobh rang:

  • $ _regKey: A eochair uathúil don chlib (a úsáidtear le haghaidh Zend_Registry)
  • $ _validAttributes: Sraith de bailí, ainmneacha tréith Ba chóir a bheith beaga go gcomhlíonann W3C
  • $ _selfClosing: Luach Boole a shonrú má tá an chlib dúnta féin nó nach bhfuil, m.sh. <br/>
  • $ _tagName: Ainm an chlib (ie comhlacht seo, mar shampla)

Mar sin, ar deireadh an cód le haghaidh an cúntóir dearcadh bodyTag féin, a dhlúth an-:

 / ** * Amharc ar an chlib cúntóir don chomhlacht * * @ t-údar Lloyd Watkin * 21/08/2010 @ ó * * pacáiste @ Pro leathnaíonn @ subpackage ViewHelper * / rang Pro_View_Helper_BodyTag Pro_View_Helper_AbstractTag {/ ** * Clárlann eochair do placeholder * * @ * teaghrán var / cosanta $ _regKey = 'Pro_View_Helper_BodyTag'; / ** * Cad iad na tréithe * * bailí ach amháin faoi láthair tréithe STF tacaíocht * (S = daingean, T = IDIRTHRÉIMHSEACHA, F = Frámadán) * * @ féach http://www * .w3schools.com/tags/tag_body.asp @ * eagar var / _validAttributes cosanta $ = eagar (/ * Tréithe Simplí * 'id' / 'aicme', 'dir', 'lang', 'stíl', 'teidil ',' xml : lang ', / * Tréithe Imeacht * /' onclick ',' ondblclick ',' onload ',' onmousedown ',' onmousemove ',' onmouseout ',' onmouseover ',' onmouseup ',' onkeydown ', 'onkeypress', 'onkeyup', 'onunload',); / ** * chlib deiridh Féin?  * * @ * Boole var / _selfClosing $ chosaint = false; / ** * Tag ainm * * @ * teaghrán var / cosanta $ _tagName = 'comhlacht';} 

Má ghlacann tú le breathnú ar an stór's ann freisin ar ghrúpa de tástálacha aonad go bhfolaítear an fheidhmiúlacht. Ceanglaítear na tástálacha aonad atá scríofa i PHPUnit agus tá siad sa BodyTagTest.php chomhad.

Ar deireadh ...

Seo mé a thaispeántar tú mo chur chun feidhme cúntóir dearcadh tag teibí teibí (eek) agus a chur chun feidhme tag chomhlacht. Cé gur féidir leis an fheidhmiúlacht JavaScript a chur i bhfeidhm ar bhealaí eile (seachas crua códaithe ag am ar aschur) Is féidir le rudaí eile nach (gan JavaScript is é sin) gan athrú ar áiteanna eile ar an t-iarratas. Tá súil agam go bhfaighidh tú na haicmí cabhrach i d'iarratas ...

3 freagairtí ar "Creat Zend Comhlacht Helper Féach ar Tag"

  1. Tá mo nascóir automagic ba chúis ar eisiúint an cód le haghaidh XML sin déan neamhshuim a dhéanamh de gur cheist:)

  2. [...] An bunaidh anseo: Evilprofessor.co.uk »Zend gCreat Comhlacht Tag View Helper Uimh [...]

  3. [...] Níos mó as an bhfoinse bunaidh: Evilprofessor.co.uk »Zend gCreat Comhlacht Tag View Helper Comhroinn agus a [...]

Leave a Reply













Lánléargas Téama Themocracy

6 cuairteoirí ar líne anois
5 aíonna, 1 bots, 0 baill
Tá 14 ag 07:34 UTC: Max cuairteoirí an lae inniu
An mhí seo: 26 ag 2011/07/05 12:35 UTC
I mbliana: 130 ag 28-03-2011 22:40 UTC
Gach uair: 130 ag 28-03-2011 22:40 UTC