משתני PHP לא קיימות צורות
נתקלתי במשהו שלא הייתי מודע של היום הוא שימושי מאוד .... השליטה שגיאה מפעיל '@' ב -PHP .
אז על איזה רקע איך נתקלתי בבעיה זו, יישומי אינטרנט שלי אני נוטה להשתמש באותה צורה להכניס נתונים לתוך mySQL מסד הנתונים. אם יש לי איזשהו מספר "id" להגדיר באמצעות משתנה GET אז שמפעיל עומס ממסד הנתונים, אחרת אני הוספת נתונים חדשים.
בשנת אלמנטים טופס שלי לעיתים קרובות אני להגדיר את הערך של שדה הטופס למשהו כמו <? = $ נתונים ['fieldValue'];?> זה עובד מצוין בעת טעינת הנתונים, אבל כאשר אני מוסיף נתונים חדשים אני מקבל את הטופס מילא כמו להלן (הערה על ההתחברות שלי או כשאני בדיקות יש לי דיווח שגיאות מוגדר E_ALL אז אני יכול לוודא שהכל פועל כראוי):
שימו לב: לא מוגדר משתנה: נתונים / home / public_html / dataEdit.php על קו 69
אז מה בסופו של דבר הגעתי לעשות כתב יותר (פחות יפה) קוד אשר אמר <? if (isset ($ נתונים ['fieldValue'])) {echo $ נתונים ['fieldValue'];}?.> לא בדיוק גדול ![]()
ואז נתקלתי מפעיל את השגיאה השליטה ב-PHP, פשוט על ידי הצבת '@' לפני סמל המפעיל (בעצם כל דבר יכול להחזיר תוצאה) את הבעיה הנ"ל נפתרה. למשל עכשיו אני יכול לעשות עבור פרמטר ערך שלי <= @ $ נתונים ['fieldValue'];?>. אם המשתנה אינו מוגדר (כלומר, טעות תהיה שנוצר), אז השגיאה מודחק.
הערה: שימוש '@' סמל יכול לדכא טעויות גדולות להסתיר את העובדה כי חלק של האתר שלך אינו פועל כראוי, אז תיזהר!

















































