अध्याय 10: PHP में फ़ाइल आई/ओ ऑपरेशन्स (File I/O Operations in PHP)

अध्याय 10: PHP में फ़ाइल आई/ओ ऑपरेशन्स (File I/O Operations in PHP)

इस अध्याय में, हम PHP में फ़ाइल आई/ओ (इन्पुट/आउटपुट) ऑपरेशन्स के बारे में जानेंगे। फ़ाइल आई/ओ ऑपरेशन्स का उपयोग फ़ाइलों को खोलने, पढ़ने, लिखने, और बंद करने के लिए किया जाता है। PHP में फ़ाइलों के साथ काम करना वेब एप्लिकेशन्स के लिए महत्वपूर्ण होता है, जैसे कि डेटा को स्टोर करना, लॉग्स मेंटेन करना, और यूज़र इनपुट को सेव करना। इस अध्याय में, हम फ़ाइलों के साथ विभिन्न ऑपरेशन्स को कैसे किया जाता है, इसके सिंटैक्स और उदाहरणों पर विस्तार से चर्चा करेंगे, ताकि आप PHP में फ़ाइल आई/ओ ऑपरेशन्स को प्रभावी ढंग से लागू कर सकें।

फ़ाइल खोलना और पढ़ना (Opening and Reading Files)

PHP में फ़ाइलों को खोलना और पढ़ना एक सामान्य कार्य है जो कई वेब एप्लिकेशन्स में उपयोग किया जाता है। PHP में फ़ाइलों के साथ काम करने के लिए कई इनबिल्ट फंक्शन्स उपलब्ध हैं। इस सेक्शन में, हम फ़ाइल खोलने और पढ़ने के विभिन्न तरीकों को देखेंगे।

फ़ाइल खोलना (Opening a File)

PHP में फ़ाइल खोलने के लिए fopen() फंक्शन का उपयोग किया जाता है। यह फंक्शन दो पैरामीटर्स लेता है: फ़ाइल का नाम और मोड (जिस मोड में आप फ़ाइल खोलना चाहते हैं)।

<?php
$filename = "example.txt";
$mode = "r"; // पढ़ने के लिए खोलें (read mode)

$file = fopen($filename, $mode);

if ($file) {
echo "फ़ाइल सफलतापूर्वक खोली गई।";
} else {
echo "फ़ाइल खोलने में त्रुटि हुई।";
}
?>

फ़ाइल मोड्स (File Modes)

फ़ाइल खोलने के विभिन्न मोड्स होते हैं:

  • ‘r’: केवल पढ़ने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो त्रुटि होती है।
  • ‘r+’: पढ़ने और लिखने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो त्रुटि होती है।
  • ‘w’: केवल लिखने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो नई फ़ाइल बनाई जाती है। यदि फ़ाइल मौजूद है, तो उसका कंटेंट हटा दिया जाता है।
  • ‘w+’: पढ़ने और लिखने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो नई फ़ाइल बनाई जाती है। यदि फ़ाइल मौजूद है, तो उसका कंटेंट हटा दिया जाता है।
  • ‘a’: केवल लिखने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो नई फ़ाइल बनाई जाती है। यदि फ़ाइल मौजूद है, तो कंटेंट को अंत में जोड़ दिया जाता है।
  • ‘a+’: पढ़ने और लिखने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो नई फ़ाइल बनाई जाती है। यदि फ़ाइल मौजूद है, तो कंटेंट को अंत में जोड़ दिया जाता है।

फ़ाइल पढ़ना (Reading a File)

फ़ाइल को पढ़ने के लिए कई फंक्शन्स होते हैं। कुछ प्रमुख फंक्शन्स निम्नलिखित हैं:

1. fread(): यह फंक्शन एक ओपन फ़ाइल से डेटा पढ़ता है।

<?php
$filename = "example.txt";
$file = fopen($filename, "r");

if ($file) {
$filesize = filesize($filename);
$content = fread($file, $filesize);
fclose($file);
echo $content;
} else {
echo "फ़ाइल पढ़ने में त्रुटि हुई।";
}
?>

2. file_get_contents(): यह फंक्शन फ़ाइल की पूरी सामग्री को एक स्ट्रिंग के रूप में पढ़ता है।

<?php
$filename = "example.txt";
$content = file_get_contents($filename);

if ($content !== false) {
echo $content;
} else {
echo "फ़ाइल पढ़ने में त्रुटि हुई।";
}
?>

उदाहरण (Example)

नीचे एक उदाहरण दिया गया है जिसमें fopen()fread(), और fclose() का उपयोग करके एक फ़ाइल पढ़ी गई है:

<?php
$filename = "example.txt";
$file = fopen($filename, "r");

if ($file) {
$filesize = filesize($filename);
$content = fread($file, $filesize);
fclose($file);
echo $content; // फ़ाइल की सामग्री प्रदर्शित करें
} else {
echo "फ़ाइल खोलने में त्रुटि हुई।";
}
?>

फ़ाइल लिखना (Writing to Files)

PHP में फ़ाइलों में डेटा लिखने के लिए कई फंक्शन्स उपलब्ध हैं। फ़ाइल लिखने का मतलब है कि आप एक नई फ़ाइल बना सकते हैं या किसी मौजूदा फ़ाइल में डेटा जोड़ सकते हैं। इस सेक्शन में, हम PHP में फ़ाइलों में डेटा लिखने के विभिन्न तरीकों को देखेंगे।

फ़ाइल खोलना (Opening a File for Writing)

फ़ाइल में लिखने के लिए, आपको सबसे पहले फ़ाइल को एक उपयुक्त मोड में खोलना होगा। फ़ाइल खोलने के लिए fopen() फंक्शन का उपयोग किया जाता है।

fopen() फंक्शन (fopen() Function)

सिंटैक्स (Syntax)

fopen(string $filename, string $mode, bool $use_include_path = false, resource $context = null): resource|false

फ़ाइल मोड्स (File Modes)

फ़ाइल खोलने के विभिन्न मोड्स होते हैं:

  • ‘w’: केवल लिखने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो नई फ़ाइल बनाई जाती है। यदि फ़ाइल मौजूद है, तो उसका कंटेंट हटा दिया जाता है।
  • ‘w+’: पढ़ने और लिखने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो नई फ़ाइल बनाई जाती है। यदि फ़ाइल मौजूद है, तो उसका कंटेंट हटा दिया जाता है।
  • ‘a’: केवल लिखने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो नई फ़ाइल बनाई जाती है। यदि फ़ाइल मौजूद है, तो कंटेंट को अंत में जोड़ दिया जाता है।
  • ‘a+’: पढ़ने और लिखने के लिए फ़ाइल खोलें। यदि फ़ाइल मौजूद नहीं है, तो नई फ़ाइल बनाई जाती है। यदि फ़ाइल मौजूद है, तो कंटेंट को अंत में जोड़ दिया जाता है।

fwrite() फंक्शन (fwrite() Function)

सिंटैक्स (Syntax)

fwrite(resource $handle, string $string, int $length = null): int|false

पैरामीटर्स (Parameters)
  • $handle: वह फ़ाइल पॉइंटर जो fopen() द्वारा खोली गई फ़ाइल को संदर्भित करता है।
  • $string: वह स्ट्रिंग जिसे आप फ़ाइल में लिखना चाहते हैं।
  • $length (वैकल्पिक): लिखने के लिए अक्षरों की अधिकतम संख्या। यदि निर्दिष्ट नहीं है, तो पूरी स्ट्रिंग लिखी जाएगी।
रिटर्न टाइप (Return Type)
  • यह फंक्शन उन बाइट्स की संख्या लौटाता है जो सफलतापूर्वक फ़ाइल में लिखी गई हैं। यदि लिखने में विफल होता है, तो false लौटाता है।

उदाहरण (Example)

<?php
$filename = "example.txt";
$file = fopen($filename, "w");

if ($file) {
$content = "यह एक उदाहरण है।";
$bytes_written = fwrite($file, $content);

if ($bytes_written !== false) {
echo "फ़ाइल में $bytes_written बाइट्स सफलतापूर्वक लिखी गई।";
} else {
echo "फ़ाइल में लिखने में त्रुटि हुई।";
}

fclose($file);
} else {
echo "फ़ाइल खोलने में त्रुटि हुई।";
}
?>

file_put_contents() फंक्शन (file_put_contents() Function)

सिंटैक्स (Syntax)

file_put_contents(string $filename, mixed $data, int $flags = 0, resource $context = null): int|false

पैरामीटर्स (Parameters)
  • $filename: वह नाम जिसमें आप डेटा लिखना चाहते हैं।
  • $data: वह डेटा जिसे आप फ़ाइल में लिखना चाहते हैं। यह स्ट्रिंग, एरे, या स्ट्रीम हो सकता है।
  • $flags (वैकल्पिक): इस पैरामीटर के माध्यम से आप विभिन्न ऑप्शंस सेट कर सकते हैं जैसे FILE_APPEND (कंटेंट जोड़ने के लिए)।
  • $context (वैकल्पिक): एक संदर्भ संसाधन।
रिटर्न टाइप (Return Type)
  • यह फंक्शन उन बाइट्स की संख्या लौटाता है जो सफलतापूर्वक फ़ाइल में लिखी गई हैं। यदि लिखने में विफल होता है, तो false लौटाता है।
उदाहरण (Example)

<?php
$filename = "example.txt";
$content = "यह एक और उदाहरण है।";
$bytes_written = file_put_contents($filename, $content);

if ($bytes_written !== false) {
echo "फ़ाइल में $bytes_written बाइट्स सफलतापूर्वक लिखी गई।";
} else {
echo "फ़ाइल में लिखने में त्रुटि हुई।";
}
?>

fclose() फंक्शन (fclose() Function)

सिंटैक्स (Syntax)

fclose(resource $handle): bool

पैरामीटर्स (Parameters)
  • $handle: वह फ़ाइल पॉइंटर जो fopen() द्वारा खोली गई फ़ाइल को संदर्भित करता है।
रिटर्न टाइप (Return Type)
  • यह फंक्शन true लौटाता है यदि फ़ाइल सफलतापूर्वक बंद हो गई है, अन्यथा false लौटाता है।
उदाहरण (Example)

<?php
$filename = "example.txt";
$file = fopen($filename, "w");

if ($file) {
$content = "यह एक उदाहरण है।";
fwrite($file, $content);
fclose($file);
} else {
echo "फ़ाइल खोलने में त्रुटि हुई।";
}
?>

इन फंक्शन्स का उपयोग करके, आप PHP में फ़ाइलों में डेटा लिख सकते हैं और उन्हें प्रबंधित कर सकते हैं। यह आपको अपने वेब एप्लिकेशन्स में डेटा को सुरक्षित रूप से स्टोर करने और उसे आवश्यकतानुसार अपडेट करने में मदद करता है।



Index