صدا زدن چند تابع همنام در یک صفحه

amirepsilon

Active Member
سلام
دوستان من به دلایلی چند تابع دارم داخل کلاس های جداگانه
میخوام اینها رو (3 تا) در یک صفحه با هم صدا بزنم
ولی ارور میده که نمیتونه دوباره (redeclare) تابع رو تعریف کنه
میخواستم بدونم که روشی هست که پس از استفاده از تابع یا در واقع کلاس اولی اون رو پاک کنیم
یه چیز تو مایه های unset
بعد تابع یا کلاس بعدی رو فراخوانی کنیم ؟
ممنون
یا علی
 

k2-4u

Well-Known Member
خب این کار درست نیست و .
امکان پذیر نیست
درسته که در برنامه نویسی آدم آزاده ولی
بعضی کارها . کیفیت رو میاره پایین
اگر خیلی کارت گیره از namespace استفاده کنید (البته در php 5.3 وجود داره )
 

D.A.V.O.O.D

Member
کوروش دوستمون گفته که تابع ها توی کلاس های جداگانه هستند ، نباید مشکلی داشته باشه ...

مطمئنی این ارور مال اون تابع هاست ؟
 

k2-4u

Well-Known Member
کوروش دوستمون گفته که تابع ها توی کلاس های جداگانه هستند ، نباید مشکلی داشته باشه ...

مطمئنی این ارور مال اون تابع هاست ؟

خب پس یک جای کار مشکل داره (اگر از کلاس های جدا استفاده می کنید )

ارور میده که نمیتونه دوباره (redeclare) تابع رو تعریف کنه
این ارور در چنین شرایطی غیر طبیعیه
امیر جان میشه کد بگذاری
 

amirepsilon

Active Member
خود تابع که مشکلی نداره
ولی چون جند تا تابع در چند تا کلاس با یک اسم هستن مشکل میگیره
 

k2-4u

Well-Known Member
خب یعنی چی ؟ این جمله شما چندین جور معنی میده

شما 2 تا کلاس دارین که تو هر دو یک تابع وجود داره . این دو تابع یک نام دارند
در چنین شرایطی هیچ مشکلی نباید باشه
 

D.A.V.O.O.D

Member
خود تابع که مشکلی نداره
ولی چون جند تا تابع در چند تا کلاس با یک اسم هستن مشکل میگیره

ببین این مشکلی که تو میگی در یه صورت ممکنه پیش بیاد و اونم این که شما در یک کلاس مثلا از تابع Open دو بار استفاده کرده باشی .

وگرنه مثلا اگه یه بار تابع Open توی Class1 تعریف بشه و یه بارم توی Class2 همچنین اروری نباید مشاهده بشه !
 

amirepsilon

Active Member
یه کار دیگه میشه کرد
این که متغیر های اون کلاس رو عوض کنم
به جای این که برای هم کار یک کلاس بسازم
مثلا اینو ببینید :

PHP:
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

Well-Known Member
PHP:
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",
);

}

چطور میشه تو یه صفحه دیگه مقدار این متغیر ها رو عوض کرد ؟

ببخشیدا امیر جان . موضوع قبل رو اصلا روشن نکردی
والا من که هیچی نهفمیدم اصلا چی شد !؟! :-? :shock:

داوود شما چیزی متوجه شدی ؟

میشه کد بگذاری
 

D.A.V.O.O.D

Member
ببخشیدا امیر جان . موضوع قبل رو اصلا روشن نکردی
والا من که هیچی نهفمیدم اصلا چی شد !؟! :-? :shock:

داوود شما چیزی متوجه شدی ؟

میشه کد بگذاری

والا منم نفهمیدم !
آقا امیر چی شد الان ؟ مشکل قبلیت حل شد ؟ حل نشد ؟ سوال جدید کردی ؟
 

amirepsilon

Active Member
دوستان من یک مشکلی داشتم
و اون این که نمیتونستم تو یه صفحه دیگه مقدار متغیر های یک کلاس رو عوض کنم
برای همین برای هر کاری یک کلاس جواگانه ساختم
بعد با یه مشکل دیگه روبرو شدم و الا اصل مشکلم همینه
ممنون میشم کمکم کنید
 

D.A.V.O.O.D

Member
یه کار دیگه میشه کرد
این که متغیر های اون کلاس رو عوض کنم
به جای این که برای هم کار یک کلاس بسازم
مثلا اینو ببینید :

PHP:
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:
<?PHP
$Class = new cat();

//Meghdare Avaliye Bayad Inja Chap Beshe .
echo $Class->name_prefix;
echo "<br />";

$Class->name_prefix = "&nbsp;-";

//Age Meghdare Motaghayer Taghir Karde Bashe Khate Zir Bayad Khorojish Beshe : " &nbsp;-";
echo $Class->name_prefix;
?>

امیدوارم این مشکلتم مثل قبلی حل بشه :)
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا