Jump to content
php.lv forumi

john.brown

Reģistrētie lietotāji
  • Content Count

    510
  • Joined

  • Last visited

Everything posted by john.brown

  1. Ja viņš defaultā ir izslēgts, tad nav nekādas garantijas, ka labais sisadmins viņu būs ieslēdzis :) 2Venom Vai tad galīgi nekā nav ko teikt par to klassīti http://paste.php.lv/1367? It kā būtu pārrakstīta vispārējos vilcienos. Gribu vēl order funkciju pielikt. Te ir uz ātru roku lietošanas pimērs: lietošana
  2. Ar to rēķināties diez vai var :)
  3. Strīdīgs jautājums. Pirmajā brīdī tā liekas. Bet : 1) vai ir jēga izpildīt tālāk kodu, ja nav atvēries fails? 2) lai jēdzīgi un smuki izvestu kļūdas beigās no mainīgās, jāekranē paša php ziņojumi (@fopen($file,"w")), bet tad no tām kļūdām ir maz jēgas - es pats varu max uzrakstīt "Nevaru avert failu $file", bet kāpēc nevaru, to tā arī neuzzināšu. Ja pareizi saprotu, iekš php nav mainīgā, kurā viņš pats ievietotu savus kļūdu ziņojumus (analogu Perla $@ vai $!). 3) PHP manuālī par OOP viņi paši piemēros taisa funkcijas vidū die() :) Tās bāzītes pārrakstīšanas sākums varētu būt a
  4. Vienā no maniem iepriekšējim postiem :) Kods ir šeit: MICROdb Sen gribēju viņu pārrakstīt. Skaidrs, ka pilnīgi jāpārtaisa darbības ar failiem - viņi ir jākešo. Pašlaik viņa galīgi navajadzīgi tos virina. Arī datu meklēšanu noteikti var effektīvaku uztaisīt.
  5. Ko pielabot vienmēr var atrast :) Manā gadījumā gan biežāk sanāk tā, ka uzrakstu classīti, novedu līdz dzīvīgam izskatam uz to brīdi, un vairs bez galējas nepieciešamības tur iekšā nelienu - laika vienmēr trūkst :( Bet tāda publiska koda iztirzāšana veicina radošo domu :) Šinī sakarā, varbūt varētu arī pieminēto txt datubāzīti apspriest - vai nu šinī, vai jaunā tredā?
  6. 2Venom Pēdējā rindiņa laikam loģiskāka būtu šitāda: return str_replace(array_keys($this->tags),array_values($this->tags),$this->contents); Rezultāta Parse varētu būt šāda ,saglabājot iespēju apstrādāt rindas. Tiesa, ari ne galīgā versija <?php class Parse { var $file; var $contents; var $tags; function Parse($file = '',$mode = 0,$tags = array()) { static $tpl = array(); if ($tags) $this->tags = $tags; if ($file) { $this->file = $file; if(!isset($tpl[$file])) { if(!$mode) {
  7. Funkcija setValue() tika radita tikai paša ērtībām - tā lasāmāks kods iznāk (IMHO). "Liekais" if..else nes konkrētu slodzi - ja $mode == 0 - parsējam failu, ja $mode == 1 - parsejam $this->file kā rindu. Piekrītu, ka nav gluži korekti, bet reizēm ir tāda vajadzība :) Izmantot asociatīvo massīvu acīm redzot ir saprātīgak. Vienkārši man nekad nav bijis vairāk par ~5-10 tagiem templatēs - tur saputroties ir grūti. Man patīk kaut kas līdzīgs: $prs->setValue(array('%%TITLE%%','%%TOOLS%%','%%MSG%%','%%LEFT_HTMLOUT%%','%%RIGHT_HTMLOUT%%','%%SCRIPT%%','%%CHARSET%%'),array($title,$tools,$msg
  8. Var visādi. Cik koderu, tik variantu, kā to realizēt. Runa gāja ne par to, kā izmantot templates vai kā ātrāk nolasīt failu, bet par OOP lietderību PHP. Konkrētais piemērs tika pievienots īsuma dēļ - diez vai kādam būtu labums, ja es te ievietotu, piemēram, txt datubāzes objektu ar pāris simtiem rindu koda. Es guvu labumu no šīs diskusijas, t.k. pārskatīju kodu, kuru tiku rakstījis savas PHP kodešanas sākumā pa taisno pārkodējot no Perl. Galvenais dotajā gadījumā ir tas, ka ne tikai var, bet arī vajag lietot OOP, vēl jo vairāk tas iekš PHP ir realizējams daudz vienkāršāk, nekā, piemēram,
  9. dotajā gadījumā nav nepieciešamības pēc //im modifikatoriem, kaut arī leitot viņus varēja. Nedomāju, ka tas ļoti saīsinātu vai uzlabotu kodu. //i pilnīgi noteikti nē, jo var būt gadījums, kad tev ir %%vards%% un %%VARDS%% - tie tomēr ir dažādi tagi :)lietojot //m būtu jātaisa $fh = fopen($file,'r'); $tpl = fread($fh,filesize($file)); fclose($fh); manā saprašanā, tas ir pārak gari un sarežgīti :) Dizainerim un vēl jo vairāk lietotājam bieži nav ērti strādāt ar tagiem, kurus viņš neredz gatavā dizainā. <?=$vards ?> ir ērti tikai ja pats taisi templeitu, dizainerim ērtāk ir %%v
  10. Veltīgi te daži izsakās tik noliedzoši par objektu lietošanu PHP. Ja jums jāraksta liels projekts, tad labot bagus, kā arī nākotnē izmainīt funkcionalitāti ir daudz vienkāršāk ar objektiem, nekā ložņāt pa visu kodu. Otrkārt, ir daudz lietu, kuras atkārtojas no projekta uz projektu (piemēram, templašu lietošana :D ). Vienreiz uzrakstījuši objektu, jūs varat viņu lietot visos nākamajos projektos, ievērojami sev atvieglojot dzīvi :) Kā piemērs: <? include("Parse.inc"); $prs = new Parse("template.html"); $prs->setValue(array('%%vards%%','%%uzvards%%','%%vecums%%','%%mails%%','%%adrese
×
×
  • Create New...