Free tutorials & notes in Hindi & English · Clean code examples 🧰 मुफ़्त PDF और फ़ोटो टूल्स →
📘 Lesson  ·  Lesson 14

File Handling

File handling क्यों

File handling PHP को data किसी file में save करने और बाद में पढ़ने देता है — logs, सरल settings, exports, या तब text रखने के लिए जब पूरा database न चाहिए। PHP आम कामों को दो functions से बहुत आसान बनाती है: file_put_contents और file_get_contents।

💡 छोटे text कामों के लिए file functions काफ़ी हैं। बहुत ज़्यादा structured data के लिए MySQL जैसा database इस्तेमाल कीजिए।

File में लिखना

file_put_contents file बनाता है (ज़रूरत हो तो) और उसमें text लिखता है।

<?php
  file_put_contents("data.txt", "Hello CodingEasily");
  echo "Saved!";
?>
Saved!

चेतावनी: यह file में पहले से मौजूद सब कुछ replace कर देता है। पुराना content रखकर जोड़ने को append (आगे) इस्तेमाल कीजिए।

File पढ़ना

<?php
  $text = file_get_contents("data.txt");
  echo $text;
?>
Hello CodingEasily

file_get_contents पूरी file एक string में देता है। सरल और छोटी files के लिए बढ़िया।

File में append

replace की जगह अंत में जोड़ने को FILE_APPEND flag लगाइए।

<?php
  file_put_contents("log.txt", "Line 1\n");
  file_put_contents("log.txt", "Line 2\n", FILE_APPEND);
  echo file_get_contents("log.txt");
?>
Line 1
Line 2

FILE_APPEND बिना "Line 2" "Line 1" को मिटा देता। Appending से ही logs बनते हैं।

line-by-line के लिए fopen

बड़ी files के लिए handle खोलकर line-by-line पढ़िए ताकि सब कुछ एक साथ load न हो।

<?php
  $f = fopen("log.txt", "r");   // "r" = read mode
  while (($line = fgets($f)) !== false) {
      echo $line;
  }
  fclose($f);
?>
Line 1
Line 2

काम पूरा होने पर हमेशा fclose()। आम modes: "r" read, "w" write (मिटाकर), "a" append।

Check और delete

<?php
  if (file_exists("data.txt")) {
      echo "File is there";
      // unlink("data.txt");  // file delete करता है
  }
?>
File is there

file_exists पढ़ने या delete से पहले जाँचता है। unlink file हटाता है — सावधानी से इस्तेमाल कीजिए।

आम गलतियाँ

  • Append की जगह overwrite। साधारण file_put_contents replace करता है; पुराना data रखने को FILE_APPEND लगाइए।
  • गलत path। Relative path script की जगह पर आधारित होता है — file न मिले तो जाँचिए।
  • Permission errors। Folder web server के लिए writable होना चाहिए।
  • fclose() भूलना। fopen से खोली file हमेशा बंद कीजिए।

सारांश

  • file_put_contents लिखता है; file_get_contents पूरी file पढ़ता है।
  • replace की जगह अंत में जोड़ने को FILE_APPEND लगाइए।
  • बड़ी files के लिए fopen + fgets line-by-line, फिर fclose।
  • file_exists जाँचता है; unlink delete करता है।
  • बहुत structured data के लिए files की जगह MySQL।

आगे, structured data रखिए MySQL में, या data export कीजिए PHP CSV export से।

अक्सर पूछे जाने वाले प्रश्न (FAQ)

PHP में file में लिखने का सबसे आसान तरीका क्या है?
file_put_contents("data.txt", $text) इस्तेमाल कीजिए। File न हो तो बना देता है और आपका text एक line में लिख देता है। छोटी files के लिए सबसे सरल।
PHP में पूरी file कैसे पढ़ें?
file_get_contents("data.txt") इस्तेमाल कीजिए। यह पूरी file content एक string में देता है। line-by-line पढ़ने के लिए fopen के साथ loop में fgets।
Write और append में क्या अंतर है?
Writing (default) file में सब कुछ replace कर देता है। Appending अंत में जोड़ता है और पुराना content रखता है। append को file_put_contents($f, $text, FILE_APPEND) इस्तेमाल कीजिए।
मेरा file write fail क्यों होता है?
आमतौर पर permissions की समस्या — PHP को उस folder में लिखने की अनुमति नहीं। पक्का कीजिए folder writable है, और सही relative या absolute path इस्तेमाल कीजिए।
fopen कब इस्तेमाल करूँ file_get_contents की जगह?
fopen तब जब file बड़ी हो या line-by-line process करनी हो, ताकि पूरी file एक साथ memory में न आए। छोटी files के लिए file_get_contents सरल है।
← Back to PHP Tutorial
🔗

Share this topic with a friend

यह topic किसी दोस्त को भेजें

Found it useful? Send it to a classmate learning the same thing.

अच्छा लगा? जो दोस्त यही सीख रहा है, उसे भेज दीजिए।

💻 लाइव कोड एडिटर

इस पेज के प्रोग्राम यहीं तैयार हैं — चलाएँ, बदलें और सीखें। कुछ भी इंस्टॉल किए बिना।
OneCompiler द्वारा संचालित। कोड एडिटर में अपने आप आ जाता है — Run दबाकर आउटपुट देखें। अगर एडिटर न खुले तो नए टैब में खोलें.
अगला topicOOP in PHP आपकी प्रगति: 14 / 50 (28%) · Lesson 15 / 50 आगे बढ़ें →

यह lesson कैसा लगा?

आपकी राय से हम content और बेहतर बनाते हैं।

अपना review और सुझाव लिखें (वैकल्पिक)

Review approve होने के बाद आपका नाम और शहर इसके साथ public दिख सकते हैं। Email या phone न लिखें।

▶ CodingEasily on YouTube

Video से सीखें – आसान Hindi में

चुनी हुई video: RDBMS भाग 3 – Class XI Commerce IT

▶ Channel subscribe करें