واضح آرشیو وب فارسی:سایت ریسک: کمک در نوشتن کلاس از نوع (فکر میکنم میگن) انتضاعی zoghal 26 دي 1387, 19:50سلام بر اساتید اهل فن راستش دنبال یک روش کلاس نویسی در پی اچ پی هستم که به این صورت استفاده میشه $db->select(args)->delete(arg) لطفا نوع این گونه کلاس ها و روش پیاده سازیشون رو درصورت امکان توضیح بدید yakoza 26 دي 1387, 23:28منظورت اینه که از یک شی دو تا متد فراخوانی کنه ؟ zoghal 27 دي 1387, 00:13والا سیستم کاریش رو نمیدونم واسه همین سوال کردم فقط فکر میکنم یجور کلاس در کلاس فراخوانی میشه در ظاهر ziXet 27 دي 1387, 00:18والا سیستم کاریش رو نمیدونم واسه همین سوال کردم فقط فکر میکنم یجور کلاس در کلاس فراخوانی میشه در ظاهر شما همچین چیزیو کجا دیدی؟ zoghal 27 دي 1387, 01:10والا چند وقت پیش دنبال یک سری کتابخانه برای وصل شدن به دیتابیس های مختلفی بودم که بهم یکی از این کتابخانه ها رو معرفی کردن که تو مثالاش اینطوری کارکرده بود اما الان هیجی یادم نمیاد saidshp 27 دي 1387, 08:08فکر میکنم برای دیتابیس بیشتر از این روشها استفاده میکنن $db->query($query)->fetch_assoc() یا $db->prepare($query)->execute($arg1,$arg2,....)->fetch_assoc() روش دوم فقط یک بار کوئری رو مینویسید و متغیر رو ارجاع میدید برای این کار میتونید از mysqli هم استفاده کنید. بهتون پیشنهاد میکنم کتاب advanced php5 programing رو بخو نید چون چند تا روش برای تعامل با بانک اطلاعاتی گفته که خیلی کاربردیه yakoza 27 دي 1387, 09:36والا سیستم کاریش رو نمیدونم واسه همین سوال کردم فقط فکر میکنم یجور کلاس در کلاس فراخوانی میشه در ظاهر منظورتو درست متوجه نشدم ولی اینو ببین شاید منظورت این باشه <?php /** * @author Naser kholghi * @copyright 2009 */ class a { private $b; public function __construct($b) { $this->b=$b; // ya mitoni mostaghim begi $this->b=new b(); } public function chap() { $this->b->eco("salam"); } } class b { public function eco($str) { echo $str; } } $b=new b(); $a=new a($b); $a->chap(); ?> zoghal 27 دي 1387, 14:16فکر میکنم برای دیتابیس بیشتر از این روشها استفاده میکنن $db->query($query)->fetch_assoc() یا $db->prepare($query)->execute($arg1,$arg2,....)->fetch_assoc() روش دوم فقط یک بار کوئری رو مینویسید و متغیر رو ارجاع میدید برای این کار میتونید از mysqli هم استفاده کنید. بهتون پیشنهاد میکنم کتاب advanced php5 programing رو بخو نید چون چند تا روش برای تعامل با بانک اطلاعاتی گفته که خیلی کاربردیه دوست عزیز اولن مثال هایی که زدید دقیقا همین چیزی هست که مد نظرم هست در ثانی من مشکلی با روش های تعامل با بانک اطلاعاتی ندارم فقط میخواهم بدونم این روش که خود شما هم بیان کردید به چه صورت پیاده سازی میشه دقیقا در مثال دومی که زدید جندین متد از یک آبجکت با هم و پیوشته فراخوانی میشند و 100 این متد ها باهم رابطه دارند این چیزی هست که مد نظر من هست منظورتو درست متوجه نشدم ولی اینو ببین شاید منظورت این باشه دوست عزیز دقیقا منظور من تو مثال های آقای saidshp گنجانده شده. من فقط نحوه پیاده سازی اون رو میخوام saidshp 28 دي 1387, 05:48خوب فکر میکنم منظورت رو گرفتم خیلی سادس فقط کافیه یه شی رو return کنی چه تابع باشه چه متد بغیر از متد __construct مثال class test1{ public function __construct() {} public function returnTest2(){ return new test2(); } } class test2 { private $pro = "class test2::pro"; public function __construct() {} public function printPro() { print $this->pro; } public function returnTest3(){ return new test3; } } class test3 { private $pro = "class test3::pro"; public function __construct() {} public function printPro() { print $this->pro; } } میتونی یه تابع بنویسی که شی برگردونه function returnTest1() { $obj = new test1(); return $obj; } $object = returnTest1(); $object->returnTest2()->printPro(); // print class test2::pro میتونی از خود شی هم استفاده کنی $classTest1 = new test1; $classTest1->returnTest2()->returnTest3()->printPro(); // print class test3::pro فقط به طور صریح نمی تونی این کار رو بکنی new test1()->returnTest2()->returnTest3()->printPro(); // Error چون متد __construct هیچ نوع از دادهای رو نمی تونه برگردونه اول باید شی رو تو یه متغیر قرار بدی بعد متدها رو فراخوانی کنی در اخر من برای خلاصه نویسی هیچ کدی رو تو متد __construct نذاشتم شما میتونی هر کدی رو بزاری این رو گفتم که اشتباه نشه zoghal 28 دي 1387, 13:34برگردوندن آبجکت رو امتحان کردم ببقیه رو هم چک میکنم فکر میکنم همین باشه
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 263]