PHP fgetcsv() फ़ंक्शन
वर्णन और उपयोग
fgetcsv() फ़ंक्शन फ़ाइल पॉइंटर से एक पंक्ति पढ़ता है और CSV फ़ील्ड को पार्सिंग करता है।
साथ में fgets() इसी प्रकार, लेकिन fgetcsv() फ़़ाइल से पढ़ा हुआ पंक्ति को पार्सिंग करता है और CSV फार्मेट के फ़ील्ड को खोजता है, फिर इन फ़ील्डों को शामिल करने वाला एक एक्सेससीज़ीट वापस करता है।
fgetcsv() गलती होने पर FALSE वापस करता है, फ़ाइल के अंत पर भी।
टिप्पणी:PHP 4.3.5 से, fgetcsv() की कार्रवाई द्विपदर्शी सुरक्षित है।
व्याकरण
fgetcsv(फ़ाइल,लंबाई,separator,enclosure)
पारामीटर | वर्णन |
---|---|
फ़ाइल | अनिवार्य। जिस फ़ाइल को जाँचना है, उसे निर्धारित करता है। |
लंबाई |
वैकल्पिक। पंक्ति की अधिकतम लंबाई निर्धारित करता है। यह CVएस फ़ाइल के अधिकतम पंक्ति से अधिक होना चाहिए। PHP 5 में यह पारामीटर वैकल्पिक है। PHP 5 से पहले यह अनिवार्य है। यदि इस पारामीटर को अनदेखा कर दिया जाता है (PHP 5.0.4 के बाद की संस्करणों में 0 सेट किया गया है) तो लंबाई की सीमा नहीं है, लेकिन इससे कार्य की दक्षता प्रभावित हो सकती है। |
separator | वृत्तीय।फ़ील्ड के विभाजक को निर्धारित करें (केवल एक अक्षर की अनुमति है), डिफ़ॉल्ट मूल्य कमा (अलबता केवल एक अक्षर) है। |
enclosure |
वृत्तीय।फ़ील्ड के चौड़ाई को निर्धारित करें (केवल एक अक्षर की अनुमति है), डिफ़ॉल्ट मूल्य डोलर बगैर है। यह पैरामीटर PHP 4.3.0 में जोड़ा गया था。 |
सूचना और टिप्पणी
टिप्पणी:CSV फ़ाइल में खाली पंक्तियाँ एक एकल null फ़ील्ड वाले एरे के रूप में वापस की जाएंगी, इसे त्रुटि माना नहीं जाएगा。
टिप्पणी:यह फ़ंक्शन लोकेशन संवेदी है।उदाहरण के लिए, यदि LANG निर्धारित किया गया है en_US.UTF-8 तो, एक बाइट एन्कोडिंग वाले फ़ाइल में पढ़ने के दौरान त्रुटि हो सकती है。
टिप्पणी:यदि PHP फ़ाइल को पढ़ते समय मैकिंटॉश फ़ाइल के लाइन एंडिंग को पहचान नहीं पाता, तो auto_detect_line_endings रनटाइम कॉन्फ़िगरेशन ऑप्शन को सक्षम करें。
उदाहरण
उदाहरण 1
<?php $file = fopen("contacts.csv","r"); print_r(fgetcsv($file)); fclose($file); ?>
CSV फ़ाइल:
जॉर्ज, जॉन, थॉमस, यूएसए जेम्स, एड्रुअ, मार्टिन, यूएसए
आउटपुट इस तरह होगा:
एरे ( [0] => जॉर्ज [1] => जॉन [2] => थॉमस [3] => यूएसए )
उदाहरण 2
<?php $file = fopen("contacts.csv","r"); while(! feof($file)) { print_r(fgetcsv($file)); } fclose($file); ?>
CSV फ़ाइल:
जॉर्ज, जॉन, थॉमस, यूएसए जेम्स, एड्रुअ, मार्टिन, यूएसए
आउटपुट इस तरह होगा:
एरे ( [0] => जॉर्ज [1] => जॉन [2] => थॉमस [3] => यूएसए एरे ( [0] => जेम्स [1] => एड्रुअ [2] => मार्टिन [3] => यूएसए )