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

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

miniature 25-09-07 23:24

[PHP] שאלה על הפונקציה define()
 
למה צריך את הפונקציה define()? (אל תסבירו לי איך משתמשים בה, אלא מתי טוב להשתמש בה.. למה לא לקבוע משתנה רגיל וזהו..?)

תודה,
יואב.

Tomer 25-09-07 23:25

בעיקר נוחות.

miniature 25-09-07 23:38

ציטוט:

נכתב במקור על ידי Tomer (פרסם 559500)
בעיקר נוחות.

אני אנסח את זה אחרת - למה שמישהו ישתמש בה ולא יקבע משתנה רגיל?

חיים 25-09-07 23:42

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

בניה 25-09-07 23:47

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

miniature 25-09-07 23:55

ואם נאמר ומישהו בונה פורום ומישהו כותב בפורום את המילה של הקבוע - הוא יכול להציף את הפורום או לא יודע מה..
זה לא תמיד כזה בטיחותי..

Ron | CSite.co.il 26-09-07 00:12

מזאת אומרת מישהו כותב את המילה של הקבוע?
בהודעות?תסביר את עצמך טוב יותרץ
בכל מקרה אם הוא יכתוב בהודעות או בכל מקום אחר המערכת תתייחס לזה כמחרוזת רגילה או איך שתגדיר.

ולשאלה ,
אם יש משתנה שתרצה שתמיד יהיה שווה ל5 (סתם דוגמא) ובמערכות גדולות,ייתכן שבטעות ובלי לשים לב תשנה את המשתנה,וזה יגרום לשגיאה ,לכן משתמשים בdefine .

בניה 26-09-07 00:35

הערך הזה נקבע רק בקוד עצמו, לא אם זה נמצא בתוך מחרוזת.

miniature 26-09-07 00:43

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

Ron | CSite.co.il 26-09-07 01:04

ציטוט:

נכתב במקור על ידי miniature (פרסם 559521)
בכל מקרה זה לא תמיד טוב.. נגיד שאני אחזור לתכנת את הקוד שאיתו שמתי קבוע ואני אשכח מזה ואכתוב את הקבוע איפשהו בלי לדעת על קיומו, זה יבלגן לי את כל הקוד..
בכלל, אני לא רואה סיבה הגיונית להשתמש בזה.

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


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

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