InTrance Posted August 20, 2011 Report Share Posted August 20, 2011 Labdien php.lv biedri, rakstu ar jautājumu kur labāk būtu rakstīt konekciju funkcijā vai klasē, ja jau es iepriekš zinu, kad konektēties man nāksies nevienu vien reizi, vai arī ir labāka pieeja? Jo pagaidām es izmantoju šādu variantu, un jūtu, ka nedaru diži pareizi. http://paste.php.lv/811603ada570e1a01b033eea33e95f6e?lang=php Quote Link to comment Share on other sites More sharing options...
codez Posted August 20, 2011 Report Share Posted August 20, 2011 Uztaisi autoload handleri, kurš lādē klases. Uztaisi statisku funkciju, kura atgriež db klases instanci Uztaisi kontruktorā konekciju. Šāgā gadījumā jebkurā vietā varēsi saukt DB::instance()->query('SEL...'); Ja nepatīk katru reizi saukt instances funkciju, vari izveidot arī statiskas funkcijas un saukt DB::query('SEL...'); Šādā veidā tev db klase tik ielādēta, inizializēta un piekonektēta tikai tad, ja tu kodā izmantosi DB klasi. Un nevajadzēs nekādus include un manuālas konekcijas. Quote Link to comment Share on other sites More sharing options...
briedis Posted August 20, 2011 Report Share Posted August 20, 2011 Ieliec klasē, tā, lai konekcija tiek veidota tikai tad, kad nepieciešams griezties pie datubāzes. Teiksim, singlton klases konstruktorā. *aplūko kodu* Ieteiktu lietot kādu abstrakcijas slāni. Pamēģini šo: http://redbeanphp.com/#/Tutorial ja saņemsies un apgūsi - stipri atvieglosi sev dzīvi. Quote Link to comment Share on other sites More sharing options...
codez Posted August 20, 2011 Report Share Posted August 20, 2011 Ja lieto tikai pliku ORM, tad gandrīz labāk lietot tādu db, kura defaultā jau ir objektu orientēta, piemēram couchdb, vai mongodb (šij gan nav transakcijas), nevis rdbms. Quote Link to comment Share on other sites More sharing options...
InTrance Posted August 20, 2011 Author Report Share Posted August 20, 2011 briedi, liels paldies par to RedBean, ļooti iepatikās. Būs jāpamācas jūtu. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.