References ב-PHP
-
@חוקר אמר בReferences ב-PHP:
במקרה זה, היה לי מערך שעלי היה להוסיף נתונים לאיברים, ולקבל מערך חדש הכולל את האיברים.
אם זה היה כמו ב JS למשל הייתי עושה זאת פשוט יותר:@yossiz ענה לך מצוין:
@yossiz אמר בReferences ב-PHP:
בדיוק למקרה כזה משתמשים ב-reference ב-PHP.
תחליף את הקוד ל:
foreach ($rows as &$row){זה לא מסתדר?
@www אמר בReferences ב-PHP:
תחליף את הקוד ל:
foreach ($rows as &$row){זה לא מסתדר?
אבל יש כאן בעיה שצריך לשים לב אליה. מה ש-@nigun הזכיר למעלה, שב-PHP לולאת
foreachלא יוצרת scope נפרד, ולכן המשתנה$rowנשארת אחרי הלולאה מצביעה על האיבר האחרון של ה-array. שימוש חוזר בשם המשתנה תעשה דברים לא צפויים... -
@www אמר בReferences ב-PHP:
תחליף את הקוד ל:
foreach ($rows as &$row){זה לא מסתדר?
אבל יש כאן בעיה שצריך לשים לב אליה. מה ש-@nigun הזכיר למעלה, שב-PHP לולאת
foreachלא יוצרת scope נפרד, ולכן המשתנה$rowנשארת אחרי הלולאה מצביעה על האיבר האחרון של ה-array. שימוש חוזר בשם המשתנה תעשה דברים לא צפויים...@yossiz אמר בReferences ב-PHP:
אבל יש כאן בעיה שצריך לשים לב אליה. מה ש-@nigun הזכיר למעלה, שב-PHP לולאת foreach לא יוצרת scope נפרד, ולכן המשתנה $row נשארת אחרי הלולאה מצביעה על האיבר האחרון של ה-array. שימוש חוזר בשם המשתנה תעשה דברים לא צפויים...
זו בעיה שאפשר לפתור אותה בקלות. וגם בד"כ באמת לא אמורים להשתמש שוב באותו שם משתנה.
-
Y yossiz התייחס לנושא זה ב
שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.
נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.
בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗
הרשמה התחברות