פונקציית fopen

avivbs1

New member
פונקציית fopen

היי,
התחלתי ללמוד מהטוטוריאלים של w3schools ונתקלתי במשהו קצת מוזר -
כתוב שהפונקציה מחזירה 0 אם היא נכשלת (לא מצליחה לפתוח את הקובץ). אבל מצד שני הם מיישמים את הפונקציה כך:
$file=fopen("welcome.txt","r") or exit("Unable to open file!");


אני בא מ-Java אז אולי אני לא מבין נכון, אבל לדעתי המשתנה אמור לקבל 0, ולא ליישם את ה-OR, במקרה שהפתיחה נכשלת.
דבר שני - ממתי אפשר לכתוב or בלי שום if? זה קצת מוזר..

תודה
 
כשאתה מפעיל OR (||)

הערך מומר לבוליאן. בגלל שPHP היא שפה דינאמית weak typed אפשר לעשות את זה גם אם אתה לא מצהיר במפורש על המרה.
הערך 0 בPHP מומר ל FALSE

אתה יכול לקרוא על זה כאן:
http://php.net/manual/en/types.comparisons.php

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