واضح آرشیو وب فارسی:سایت ریسک: صدا زدن چند تابع همنام در یک صفحه amirepsilon 02 مهر 1388, 18:34سلام دوستان من به دلایلی چند تابع دارم داخل کلاس های جداگانه میخوام اینها رو (3 تا) در یک صفحه با هم صدا بزنم ولی ارور میده که نمیتونه دوباره (redeclare) تابع رو تعریف کنه میخواستم بدونم که روشی هست که پس از استفاده از تابع یا در واقع کلاس اولی اون رو پاک کنیم یه چیز تو مایه های unset بعد تابع یا کلاس بعدی رو فراخوانی کنیم ؟ ممنون یا علی k2-4u 02 مهر 1388, 19:55خب این کار درست نیست و . امکان پذیر نیست درسته که در برنامه نویسی آدم آزاده ولی بعضی کارها . کیفیت رو میاره پایین اگر خیلی کارت گیره از namespace استفاده کنید (البته در php 5.3 وجود داره ) D.A.V.O.O.D 02 مهر 1388, 22:52کوروش دوستمون گفته که تابع ها توی کلاس های جداگانه هستند ، نباید مشکلی داشته باشه ... مطمئنی این ارور مال اون تابع هاست ؟ k2-4u 02 مهر 1388, 22:56کوروش دوستمون گفته که تابع ها توی کلاس های جداگانه هستند ، نباید مشکلی داشته باشه ... مطمئنی این ارور مال اون تابع هاست ؟ خب پس یک جای کار مشکل داره (اگر از کلاس های جدا استفاده می کنید ) ارور میده که نمیتونه دوباره (redeclare) تابع رو تعریف کنه این ارور در چنین شرایطی غیر طبیعیه امیر جان میشه کد بگذاری amirepsilon 03 مهر 1388, 11:39خود تابع که مشکلی نداره ولی چون جند تا تابع در چند تا کلاس با یک اسم هستن مشکل میگیره k2-4u 03 مهر 1388, 11:43خب یعنی چی ؟ این جمله شما چندین جور معنی میده شما 2 تا کلاس دارین که تو هر دو یک تابع وجود داره . این دو تابع یک نام دارند در چنین شرایطی هیچ مشکلی نباید باشه D.A.V.O.O.D 03 مهر 1388, 11:45خود تابع که مشکلی نداره ولی چون جند تا تابع در چند تا کلاس با یک اسم هستن مشکل میگیره ببین این مشکلی که تو میگی در یه صورت ممکنه پیش بیاد و اونم این که شما در یک کلاس مثلا از تابع Open دو بار استفاده کرده باشی . وگرنه مثلا اگه یه بار تابع Open توی Class1 تعریف بشه و یه بارم توی Class2 همچنین اروری نباید مشاهده بشه ! amirepsilon 03 مهر 1388, 13:11یه کار دیگه میشه کرد این که متغیر های اون کلاس رو عوض کنم به جای این که برای هم کار یک کلاس بسازم مثلا اینو ببینید : class cat { var $HtmlTree; var $name_prefix = " -"; var $itemsTable = "items"; var $CID_FieldName = "category_id"; var $table_name = "bymir_media_cat"; var $fields = array( "id" => "id", "name" => "name", ); } چطور میشه تو یه صفحه دیگه مقدار این متغیر ها رو عوض کرد ؟ k2-4u 03 مهر 1388, 13:28class cat { var $HtmlTree; var $name_prefix = " -"; var $itemsTable = "items"; var $CID_FieldName = "category_id"; var $table_name = "bymir_media_cat"; var $fields = array( "id" => "id", "name" => "name", ); } چطور میشه تو یه صفحه دیگه مقدار این متغیر ها رو عوض کرد ؟ ببخشیدا امیر جان . موضوع قبل رو اصلا روشن نکردی والا من که هیچی نهفمیدم اصلا چی شد !؟! :-? :shock: داوود شما چیزی متوجه شدی ؟ میشه کد بگذاری D.A.V.O.O.D 03 مهر 1388, 13:51ببخشیدا امیر جان . موضوع قبل رو اصلا روشن نکردی والا من که هیچی نهفمیدم اصلا چی شد !؟! :-? :shock: داوود شما چیزی متوجه شدی ؟ میشه کد بگذاری والا منم نفهمیدم ! آقا امیر چی شد الان ؟ مشکل قبلیت حل شد ؟ حل نشد ؟ سوال جدید کردی ؟ amirepsilon 08 مهر 1388, 22:07دوستان من یک مشکلی داشتم و اون این که نمیتونستم تو یه صفحه دیگه مقدار متغیر های یک کلاس رو عوض کنم برای همین برای هر کاری یک کلاس جواگانه ساختم بعد با یه مشکل دیگه روبرو شدم و الا اصل مشکلم همینه ممنون میشم کمکم کنید D.A.V.O.O.D 08 مهر 1388, 22:55یه کار دیگه میشه کرد این که متغیر های اون کلاس رو عوض کنم به جای این که برای هم کار یک کلاس بسازم مثلا اینو ببینید : class cat { var $HtmlTree; var $name_prefix = " -"; var $itemsTable = "items"; var $CID_FieldName = "category_id"; var $table_name = "bymir_media_cat"; var $fields = array( "id" => "id", "name" => "name", ); }چطور میشه تو یه صفحه دیگه مقدار این متغیر ها رو عوض کرد ؟ سلام خب طبق مثالی که خودت زدی واسه تغییر مقدار متغیر های یک کلاس به این ترتیب باید عمل کنی : <?PHP $Class = new cat(); //Meghdare Avaliye Bayad Inja Chap Beshe . echo $Class->name_prefix; echo "<br />"; $Class->name_prefix = " -"; //Age Meghdare Motaghayer Taghir Karde Bashe Khate Zir Bayad Khorojish Beshe : " -"; echo $Class->name_prefix; ?> امیدوارم این مشکلتم مثل قبلی حل بشه :) amirepsilon 09 مهر 1388, 12:30بله مشکلم حل شد ممنون داوود جان
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 639]