אתה נמצא כאן יסודות השפה  >>  סוגי נתונים  >>  ערך ריק

ערך ריק

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

<?php
  $var=false;
/*המשתנה $var מכיל בתוכו ערך FALSE.
על-אף ש-NULL ו-FALSE הם שווי-ערך מבחינה בוליאנית,
המשתנה $var מכיל בתוכו ערך של ממש ולא ערך ריק,
לכן הוא ייחשב משתנה מוגדר.
*/

  if (isset($var)
/*מחזיר אמת במידה והמשתנה מוגדר.*/
)
     echo "\$var is defined.<BR>\n";
  $var=null;
/*המשתנה $var מכיל בתוכו NULL, ערך ריק.
לכן המשתנה $var, דינו יהיה כשל משתנה שלא מוגדר.
השמת ערך ריק במשתנה מקבילה ל: unset($var),
שמבטלת את ההגדרה של המשתנה.
*/

  if (isset($var)==false)
     echo "\$var is NOT defined.<BR>\n";
?>

הפונקציה isset() מחזירה אמת אם המשתנה מוגדר, ושקר אם המשתנה לא מוגדר (לא קיים ו/או "מכיל" ערך NULL).


תגובות בנושא

isset ? 07-12-03 09:02
 מאור
#976

אי אפשר פשוט if ($moo == null) ?

אם כן, מה מיוחד בפונקציה הזאת, ומה עוד אפשר לעשות איתה?
(בד"כ פונקציות build-in נותנות גישה מיוחדת לנתונים, משהו הרבה יותר יעיל או שפשוט לא ניתן לעשות אותו באותה שפה).

לא... 08-12-03 05:00
 אלי חן (מנהל)
#1037

הפונקציה isset בודקת האם המשתנה מוגדר או לא. והיא שקולה לביטוי:
$moo===null
עם הבדל אחד.. אם $moo אינו מוגדר, אז שימוש באופרטור === תוציא הערת NOTICE (לפעמים אופציה זו של הערות כבויה), והפונקציה isset לא תוציא הערה כזו.

במה זה עוזר לי??? 08-12-03 06:01
 מישו
#1049

אם הוא ערך ריק במה הוא עוזר לי הוא לא עושה כלום לא???

ערך NULL עוזר רבות! 08-12-03 14:02
 אלי חן (מנהל)
#1068

ערך NULL הוא ערך מיוחד.. NULL מסמן שאין ערך במשתנה, או שהמשתנה אינו מאותחל (וגם לא מוגדר). משתנים ב-PHP אין להם סוג משתנה קבוע (כמו בשפת C או ג'אווה, למשל), אלא המשתנים ב-PHP עושים הסבה אוטומטית (auto-cast) מסוג אחד לסוג אחר כאשר שמים ערכים מסוגים שונים במשתנה. זאת אומרת שמשתנה מסויים יכול להכיל גם ערך של מספר, גם ערך של מחרוזת וגם ערך אובייקט, למשל.. אך אם רוצים שהמשתנה יהיה ריק ממש, אז שמים בו את הערך המיוחד NULL.
שימו לב, יש הבדל בין NULL לבין ערכים "ריקים" אחרים, למשל: מחרוזת ריקה, אובייקט ריק, המספר 0.

לא הבנתי 09-12-04 14:01
 נתנאל חדד
#1828

לא הבנתי
בהתחלה הבנתי הכל אבל מאז המערכים אני לא מבין פה כלום!


לדף הקודםמשאבים -הקודם
לתחילת הדףלתחילת הדף
הבא- המרת סוגי נתוניםלדף הבא