PHP File Create/Write

PHP

इस अध्याय में हम सीखेंगे कि सर्वर पर फाइल कैसे create और write की जाती है।

PHP File Create - fopen()

फ़ाइल create करने के लिए fopen() फ़ंक्शन का भी उपयोग किया जाता है। शायद थोड़ा confusing करने वाला लग रहा होगा, लेकिन PHP में, फ़ाइलों को open करने के लिए उपयोग किए जाने वाले fopen() फ़ंक्शन का उपयोग करके एक फ़ाइल बनाई जाती है।

अगर आपने पिछली PHP File Open and Read को ध्यान से देखा होगा तो PHP Open File Mode सेक्शन में फाइल के $mode को Specified किया है। जिसमे यदि आप किसी ऐसी फ़ाइल पर fopen() का उपयोग करते हैं जो मौजूद नहीं है, तो यह इसे बनाएगी, यह देखते हुए कि फ़ाइल writing (w) या appending (a) के लिए खोली गई है।

उदाहरण: PHP File Create
<?php
$myfile = fopen("D:\\Documents\\abbreviation.txt", "w");
?>

ऊपर दिया गया उदाहरण "abbreviation.txt" नामक एक नई फ़ाइल बनाएगा D drive के Documents फोल्डर में क्योंकि हमने उस फाइल को ओपन करने का कोशिश किया जो कि पहले से मौजूद नहीं है।

PHP Write File - fwrite()

फ़ाइल में लिखने के लिए fwrite() फ़ंक्शन का उपयोग किया जाता है।

fwrite() फ़ंक्शन के पहले पैरामीटर में लिखने के लिए फ़ाइल का नाम होता है और दूसरा पैरामीटर लिखा जाने वाला string होता है।

उदाहरण: PHP Write File जब फाइल मौजूद ना हो
<?php
// फ़ाइल को open किया write mode में
$myfile = fopen("D:\\Documents\\abbreviation.txt", "w")
    or die("Unable to open file!");

// myfile में नया स्ट्रिंग लिखना
$newtxt = "PHP = Hypertext Preprocessor\n";
fwrite($myfile, $newtxt);

// myfile में नया स्ट्रिंग लिखना दूसरा
$newtxt = "HTML = Hypertext Markup Language\n";
fwrite($myfile, $newtxt);

// फ़ाइल close करना
fclose($myfile);
?>
Output
PHP = Hypertext Preprocessor
HTML = Hypertext Markup Language

ऊपर दिए गए उदाहरण में हमारे पास abbreviation.txt नाम का फाइल पहले से मौजूद नहीं, तो अब जैसे ही हम इस कोड को एकजुट करेंगे write only (w) मोड में तो यह एक फाइल बना लेगा abbreviation.txt के नाम से D drive के डॉक्यूमेंट फोल्डर में।

PHP Overwriting

अब ऊपर के उदाहरण को एक्सक्यूट करने के बाद अब हमारे पास एक फाइल बन गई है abbreviation.txt नाम से और उसमें कुछ डाटा पहले से मौजूद है अब अगर हम उस फाइल को ओपन करते हैं write only (w) मोड में तो उसमें मौजूद सारे डाटा डिलीट हो जाएंगे।

Example: 1 PHP Write File जब फाइल मौजूद हो
<?php
// फ़ाइल को open किया write mode में
$myfile = fopen("D:\\Documents\\abbreviation.txt", "w")
    or die("Unable to open file!");

// फ़ाइल close करना
fclose($myfile);
?>

अगर ऊपर दिए गए कोड को एक्सक्यूट करेंगे और उसके बाद अगर हम abbreviation.txt फाइल को ओपन करेंगे तो देखेंगे उस फाइल की सारी डाटा डिलीट हो चुकी हैं।

Example: 2 PHP Write File जब फाइल मौजूद हो
<?php
// फ़ाइल को open किया write mode में
$myfile = fopen("D:\\Documents\\abbreviation.txt", "w")
    or die("Unable to open file!");

// myfile में नया स्ट्रिंग लिखना
$newtxt = "Artificial Intelligence\n";
fwrite($myfile, $newtxt);

// myfile में नया स्ट्रिंग लिखना दूसरा
$newtxt = "Arithmetic Logic Unit\n";
fwrite($myfile, $newtxt);

// फ़ाइल close करना
fclose($myfile);
?>
Output
Artificial Intelligence
Arithmetic Logic Unit

जैसे कि ऊपर दिए गए कई उदाहरणों से हम समझ चुके हैं कि abbreviation.txt नाम का फाइल पहले से मौजूद है। अब जैसे हैं हम ऊपर दिए गए उदाहरण को एक्सक्यूट करते हैं तो उस फाइल में पहले से मौजूद सारे डाटा डिलीट हो जाएंगे और नया डाटा उसमें आ जाएगा यानी कि पुराने डाटा को ओवरराइड कर दिया गया है ने डाटा से।

PHP Append

जैसा नाम से ही आप समझ सकते हैं इसका काम है फाइल के डाटा को Append करना यानी कि नए डाटा को जोड़ना। और यदि फाइल पहले से मौजूद ना हो तो नया फाइल बनाना फिर उसमें डाटा जोड़ना

इसका काम भी write only (w) की तरह ही है फर्क सिर्फ इतना है कि अगर हम ओपन मोड में w का इस्तेमाल करते हैं तो वह फाइल में मौजूद सारे डेटा को डिलीट कर देता है और यदि हम फाइल मोड में a मोड का इस्तेमाल करते हैं तो वह फाइल को डिलीट नहीं करता है और डाटा के सबसे लास्ट में नए स्ट्रिंग को जोड़ देता है।

इसको अच्छे से समझने के लिए हम नीचे एक उदाहरण को देखते हैं।

Example: 1
<?php
// फ़ाइल को open किया write mode में
$myfile = fopen("D:\\Documents\\abbreviation.txt", "a")
    or die("Unable to open file!");

// myfile में नया स्ट्रिंग लिखना
$newtxt = "Sarvepalli Radhakrishnan\n";
fwrite($myfile, $newtxt);

// myfile में नया स्ट्रिंग लिखना दूसरा
$newtxt = "Swami Vivekananda\n";
fwrite($myfile, $newtxt);

// myfile में नया स्ट्रिंग लिखना तीसरा
$newtxt = "Adi Shankara\n";
fwrite($myfile, $newtxt);

// फ़ाइल close करना
fclose($myfile);
?>
Output
Artificial Intelligence
Arithmetic Logic Unit
Sarvepalli Radhakrishnan
Swami Vivekananda
Adi Shankara

ऊपर दिए गए उदाहरण में आपने देखा कि पहले से मौजूद डाटा डिलीट नहीं हुई है बल्कि उसमें नए डाटा और जुड़ चुकी है।

Reference: https://www.php.net/manual/en/function.fwrite.php


PHP close File - fclose()

किसी भी खुली हुई फ़ाइल को बंद करने के लिए fclose() फ़ंक्शन का उपयोग किया जाता है।

fclose() फंक्शन को फ़ाइल के नाम की आवश्यकता होती है या उस variable की जिसमे फ़ाइल का नाम स्टोर है, जिसे हम बंद करना चाहते हैं:

Tips: सभी फ़ाइलों का काम पूरा होने के बाद उन्हें बंद करना एक अच्छा प्रोग्रामिंग अभ्यास है। आप नहीं चाहेंगे कि आपके सर्वर पर एक खुली फ़ाइल चलती रहे जो की सर्वर की resources बरबाद करता रहे!
Article By: Brajlal Prasad
Created on: 18 Apr 2023  649  Views
 Print Article
Report Error

If you want to report an error, or any suggestion please send us an email to [email protected]