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

קוד בסיסי

$ filename = "נתיב מלא / name_of_file.txt";
$ handle = fopen (שם קובץ, "r") או למות ("לא ניתן לפתוח קובץ");
. . .
fclose ($ ידית);

דוגמא

$ filename = "קטלוג / products.txt";
$ handle = fopen (שם קובץ, "r") או למות ("לא ניתן לפתוח קובץ");
. . . עשה משהו . . .
fclose ($ ידית);


fopen (שם קובץ, "מצב");
הפונקציה fopen () נוקטת לפחות שני ארגומנטים שהם שם הקובץ לפתיחה והמצב (או הסיבה) לפתיחת הקובץ.

$ filename = "נתיב מלא / name_of_file.txt";
החלק הראשון של הקוד יקצה ערך למשתנה של שם הקובץ. ערך זה יהיה המיקום (הנתיב) ושם הקובץ שיהיה פתוח. בדוגמה, משתנה שם הקובץ מוגדר לקטלוג / products.txt. הקובץ לפתיחה נקרא products.txt ונמצא בתיקיית הקטלוג. סיומת .txt מציינת שזה קובץ טקסט.

$ handle = fopen (שם קובץ, "r") או למות ("לא ניתן לפתוח קובץ");
בשורת הקוד הבאה אנו משתמשים במשתנה שאנו מטפלים בשם $ כדי לפתוח את הקובץ.

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

מצב
תיאור
r
קריאה בלבד, מצביע מוגדר בתחילת הקובץ
r +
לקרוא ולכתוב, המצביע נקבע בתחילת הקובץ
w
כתוב רק, מצביע מוגדר בתחילת הקובץ
יחליף את כל תוכן הקובץ הקיים
תיצור קובץ אם לא קיים קובץ
w +
קריאה וכתיבה, מצביע מוגדר לתחילת הקובץ
יחליף את כל תוכן הקובץ הקיים
תיצור קובץ אם לא קיים קובץ
א
כתוב רק, מצביע מוגדר בסוף הקובץ
לא יחליף את תוכן הקובץ
מציב נתונים חדשים בסוף הקובץ
תיצור קובץ אם לא קיים קובץ
a +
לקרוא ולכתוב, המצביע נקבע בסוף הקובץ
לא יחליף את תוכן הקובץ
מציב נתונים חדשים בסוף הקובץ
תיצור קובץ אם לא קיים קובץ

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

fclose ($ ידית);
הפונקציה fclose () לוקחת ארגומנט אחד שהוא משתנה $ handle. זה אומר לתוכנית לסגור את הקובץ שזה עתה נפתח.