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

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

HOLD 17-06-09 17:16

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

תודה.

Shay Ben Moshe 17-06-09 17:19

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

אדיר 17-06-09 18:36

ניתן לעשות בזה שימוש לצרכי אבטחה גם כן.

אתה מגדיר במשתנים את פרטי ההתחברות למסד (רצוי בתוך מערך יחיד עם מס' מפתחות),
ואז אחרי שאתה מתחבר אתה עושה unset למערך.

שמעתי פעם שזה גם טוב לביצועים, לא בדקתי בעצמי.

Shay Ben Moshe 17-06-09 19:10

ציטוט:

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

אתה מגדיר במשתנים את פרטי ההתחברות למסד (רצוי בתוך מערך יחיד עם מס' מפתחות),
ואז אחרי שאתה מתחבר אתה עושה unset למערך.

שמעתי פעם שזה גם טוב לביצועים, לא בדקתי בעצמי.

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

solcito 17-06-09 19:35

ככה גם אתה יכול למחוק שסשנים וקוקיז...

Daniel 17-06-09 19:49

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

Shillo 17-06-09 19:54

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

דרך אגב, אתה יכול להחליף את unset אם פשוט תשים במשתנה null.

אדיר 18-06-09 09:31

ציטוט:

נכתב במקור על ידי MasterT (פרסם 722180)
-_-, אם אתם כותבים תגובות תכתבו אותם מתוך ידע כדי שלא תטעו אנשים..
unset "מוחק" את המשתנה מהזיכרון. לרוב משתמשים בזה כדי לשחרר משאבים מהשרת, לדוגמא, יש לי אובייקט גדול שסיימתי לעבוד איתו ואני הולך לבצע עוד פעולה שלא קשורה אליו, אני אעשה לו unset. unset מיועד גם למחיקת ערכים ממערכים לדוגמא, וכו'.

ועכשיו איך בדיוק מה שכתבתי הטעה אותו? =/

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

Daniel 18-06-09 10:11

ציטוט:

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

דרך אגב, אתה יכול להחליף את unset אם פשוט תשים במשתנה null.

טעות. יש הרבה מאוד תהליכים שתרצה לעשות שזה מאוד מאוד מאוד מאוד "יאיץ".

xPerfection: לא משתמשים בזה לצרכי אבטחה...

אדיר 18-06-09 10:38

למה לא?

שים לב למה שאמרתי ולמה שלא אמרתי,
לא אמרתי שזה מיועד לצרכי אבטחה, אמרתי שניתן לעשות בזה שימוש לצרכי אבטחה.

תקרא את הדוגמה ותראה איך ניתן לעשות בזה שימוש כזה.


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

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