הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [PHP] העמסת פעולות (https://hosts.co.il/forums/showthread.php?t=60761)

L[s]D 08-03-08 13:01

[PHP] העמסת פעולות
 
רציתי לדעת האם אפשר בPHP בתוך מחלקה כלשהי לעשות העמסת פעולות כמו שעושים בC#?
למשל יש מחלקה כלשהי, ובתוכה יש שתי פעולות עם אותו שם אבל עם מס' פרמטרים שונה שלפי מס' הפרמטרים שאני שולח כשאני מזמן את הפעולה הוא יודע לאיזו פעולה ללכת..

תודה (:

Daniel 08-03-08 13:33

ציטוט:

נכתב במקור על ידי L[s]D (פרסם 614872)
רציתי לדעת האם אפשר בPHP בתוך מחלקה כלשהי לעשות העמסת פעולות כמו שעושים בC#?
למשל יש מחלקה כלשהי, ובתוכה יש שתי פעולות עם אותו שם אבל עם מס' פרמטרים שונה שלפי מס' הפרמטרים שאני שולח כשאני מזמן את הפעולה הוא יודע לאיזו פעולה ללכת..

תודה (:

יש פונקציה לבדיקת מספר הפרמטרים שהתקבלו, משם תעשה SWITCH, ובכל CASE זה יבצע פעולה

mlnn 08-03-08 13:42

תנסה: http://solidox.org/index.php?w=modul...ion:view,id:14

בניה 08-03-08 13:45

בPHP אפשר לקבוע ערכי ברירת מחדל לארגומנטים, ויש לך גם את
http://il2.php.net/manual/en/function.func-get-arg.php
http://il2.php.net/manual/en/function.func-get-args.php
http://il2.php.net/manual/en/function.func-num-args.php

L[s]D 08-03-08 13:51

בקשר לספירת הפרמטרים, זה מה שהייתי עושה עד עכשיו.. אבל הקטע הוא שזה בלאגן כי אם אני מזמן את הפונקציה עם פחות פרמטרים ממה שהיא אמורה לקבל הוא מדפיס שגיאה מעצבנת וכותב שכמות הפרמטרים אינה תואמת.. עד עכשיו הייתי שולח לו פשוט NULLים, אבל אני דיי בטוח שיש דרך טובה יותר

בניה 08-03-08 14:10

אז ערכי ברירת מחדל זה מעולה בשבילך.
PHP קוד:

function($parm1=false$parm2=false$parm3=false) {


אם לא נשלחים פרמטרים אז בתוך בפונקציה יהיה להם הערך false או כל מה שתתן להם

L[s]D 08-03-08 14:17

ציטוט:

נכתב במקור על ידי בניה (פרסם 614881)
אז ערכי ברירת מחדל זה מעולה בשבילך.
PHP קוד:

function($parm1=false$parm2=false$parm3=false) {


אם לא נשלחים פרמטרים אז בתוך בפונקציה יהיה להם הערך false או כל מה שתתן להם

מגניב (: תודה רבה אחי, אני אנסה את זה.. הנה למדתי משהו חדש ^^


כל הזמנים הם GMT +2. הזמן כעת הוא 21:21.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ