मैं fgetCsv का उपयोग करने की कोशिश कर रहा हूं लेकिन किसी कारण से यह केवल पहली पंक्ति पढ़ रहा है। यहाँ कोड है:
$fieldseparator = ",";
$lineseparator = "\r";
if(!file_exists($csvFile)) {
echo "<div id='error'>Cannot find uploaded file. Please try again</div>";
exit;
}
$file = fopen($csvFile,"r");
if(!$file) {
echo "<div id='error'>Error loading CSV file</div>";
exit;
}
$size = filesize($csvFile);
if(!$size) {
echo "<div id='warning'>File is empty</div>";
exit;
}
$query = "";
$content = fgetcsv($file,$size,$lineseparator);
fclose($file);
foreach($content as $data) {
$values = explode($fieldseparator,$data);
$query[$i] = "('".implode("','",$values)."')";
}
यह सिर्फ एक लाइन आउटपुट करता है। यहाँ सीएसवी फ़ाइल है:
TSE-P01,1,WO47653897,RM,EcoQuiet,1
TSE-P02,1,WO47653898,RM,EcoQuiet,1
TSE-P03,1,WO47653899,RM,EcoQuiet,1
TSE-P04,1,WO47653900,RM,EcoQuiet,1
TSE-P05,1,WO47653901,RM,EcoQuiet,1
TSE-P06,1,WO47653902,RM,EcoQuiet,1
TSE-P07,1,WO47653903,RM,EcoQuiet,1
TSE-P08,1,WO47653904,RM,EcoQuiet,1
कोई विचार ऐसा क्यों हो रहा है?
2 जवाब
दस्तावेज़ से:
fgetcsv — CSV फ़ील्ड के लिए फ़ाइल पॉइंटर और पार्स से लाइन प्राप्त करता है
यदि आप एक से अधिक लाइन चाहते हैं तो आपको इसे एक से अधिक बार कॉल करने की आवश्यकता है।
यह उदाहरण w3schools से "उदाहरण 2" है http://www.w3schools.com/php/func_filesystem_fgetcsv .एएसपी
$file = fopen("contacts.csv","r");
while(!feof($file))
{
print_r(fgetcsv($file));
}
fclose($file);
जबकि लूप का उपयोग करके कोड पूरी फ़ाइल/सभी लाइनों के माध्यम से पुनरावृत्त होता है ..
वैकल्पिक रूप से .. यदि आप ऐसा कुछ करते हैं ..
print_r(fgetcsv($file));
print_r(fgetcsv($file));
print_r(fgetcsv($file));
यह केवल पहली 3 पंक्तियों को प्रिंट करेगा ..
संबंधित सवाल
नए सवाल
php
PHP एक व्यापक रूप से उपयोग किया जाता है, उच्च-स्तरीय, गतिशील, वस्तु-उन्मुख, और व्याख्या की गई स्क्रिप्टिंग भाषा मुख्य रूप से सर्वर-साइड वेब विकास के लिए डिज़ाइन की गई है। PHP भाषा के बारे में सवालों के लिए इस्तेमाल किया।