पर नहीं लिखा जाएगा मैंने व्यापक डिबगिंग की खोज और खोज की है और किया है और मेरे जीवन के लिए यह पता नहीं लगा सकता कि क्यों fputcsv मेरे लिए काम नहीं कर रहा है।PHP में fputcsv फ़ाइल
मैं सफलतापूर्वक .csv फ़ाइल खोल सकता हूं और इसे लिख सकता हूं।
मेरा डिबगिंग साबित करता है कि सरणी ठीक से लोड हो गई है और फ़ोरैच लूप सही तरीके से काम कर रहा है। हालांकि, fputcsv फ़ंक्शन कुछ भी लिखने में विफल रहता है। मैंने उन सभी तारों को हटा दिया है जिन्हें मैं यूआरएल आदि जैसी समस्या का कारण बन सकता हूं, लेकिन यह अभी भी नहीं लिखेगा।
मैं इस माहौल तक पहुंचने वाला एकमात्र व्यक्ति हूं, इसलिए मुझे पता है कि यह फ़ाइल लॉक संघर्ष नहीं है। मैं फ़ाइल बना सकता हूं और इसे लिख सकता हूं, इसलिए मुझे पता है कि यह अनुमति अनुमति नहीं है। और, मुझे फ़ोरैच लूप से डीबग आउटपुट मिलता है, इसलिए मुझे पता है कि यह सरणी या लूप के साथ कोई समस्या नहीं है।
मैं अपने कोड और नीचे डीबग लॉग प्रदान करेंगे ...
$posts_meta = array(
'twitter_title' => $this_title,
'twitter_brandtag' => $this_brandtag,
'twitter_hashtags' => $this_hashtags,
'twitter_iterations' => $this_iteration,
'twitter_timing' => $this_timing,
'twitter_time' => $this_time,
'twitter_id' => $post_id,
);
// Debuging
file_put_contents("/blog/debug.txt", "About to write CSV file.\n", FILE_APPEND);
file_put_contents("/blog/debug.txt", print_r($posts_meta, true)."\n", FILE_APPEND);
$myfile = fopen('/blog/pdm_twitter_ouptut.csv', 'a+');
// More debugin
file_put_contents("/blog/debug.txt", "myfile handle = ".$myfile."\n", FILE_APPEND);
fwrite($myfile, "This file is open and working.\r\n");
foreach ($posts_meta as $fields){
$fresponse = fputcsv($myfile, $fields);
// A little more debugging...
file_put_contents("/blog/debug.txt", $fields."\n", FILE_APPEND);
}
fclose($myfile);
// And more debugging
file_put_contents("/blog/debug.txt", "fputcsv response = ".$fresponse."\n", FILE_APPEND);
file_put_contents("/blog/debug.txt", "Just closed CSV file.", FILE_APPEND);
और यहाँ जिसके परिणामस्वरूप डीबग लॉग है ...
About to write CSV file.
Array
(
[twitter_title] => World Stocks Up As US Jobs, China Exports Improve
[twitter_brandtag] => - FP test 9
[twitter_hashtags] => #Economy #Markets #Business #Investing #Stocks
[twitter_iterations] => 12
[twitter_timing] => 240
[twitter_time] => 2013-03-08 07:55:24
[twitter_id] => 11051
)
myfile handle = Resource id #548
// Print-out of $fields here...
World Stocks Up As US Jobs, China Exports Improve
- FP test 9
#Economy #Markets #Business #Investing #Stocks
12
240
2013-03-08 07:55:24
11051
fputcsv response = // Hm!? I wonder why no response code?
Just closed CSV file.
सब csv फ़ाइल में प्रकट होता है (जैसा कि आप उपरोक्त डीबग कोड में देख सकते हैं) "यह फ़ाइल खुली है और काम कर रही है।"
किसी भी विचार के किसी भी विचार की सराहना की जाएगी!
बहुत बहुत धन्यवाद !!!
ट्रिप
आपको fputcsv कॉल के वापसी मूल्यों को लॉगिंग करना चाहिए। यह सफल होने पर लिखा बाइट्स की संख्या वापस करेगा, अन्यथा बूलियन झूठी। चूंकि आपको कोई प्रतिक्रिया कोड नहीं मिलता है, यह शायद लूप के अंत में एक बूलियन झूठा है, जो आमतौर पर गैर-प्रिंट करने योग्य होता है। –