2012-10-02 97 views
2

我得到以下致命錯誤:如何在Centos中安裝mbstring擴展?

Fatal error: Call to undefined function mb_convert_encoding() in /var/www/html/dai/components/com_servicemanager/views/i0602/view.html.php on line 67

我創建一個文件,CSV:

<?php 

$dateTimeNow = ... 

$list = $this->get('DataCSV'); 

$filename = 'CSV_' . $dateTimeNow . '.csv'; 

foreach ($list as $item) 
{ 
    $csv .= join("\t", $item)."\r\n"; 
} 

$csv = chr(255) .chr(254) . mb_convert_encoding($csv, "UTF-16LE", "UTF-8"); 


header("Content-type: application/x-msdownload"); 
header("Content-disposition: csv; filename=$filename; size=" . strlen($csv)); 
echo $csv; 
exit; 

我在窗口上WAMP運行正常。但我放在服務器上是Centos,它不能創建文件csv。爲什麼?你可以幫我嗎?謝謝。

+0

什麼錯誤來了??? –

+0

它不顯示錯誤。 – mum

+0

使用http://php.net/fputcsv ... – KingCrunch

回答

6

結果你失去了mb_string功能。安裝它:

$ sudo yum install php-mbstring 

這應該解決您的問題,因爲它需要照顧安裝軟件包。

對於未定義的變量,當您啓用錯誤報告時,您應該在Windows上看到相同的通知。

只是初始化$csv你更增添它之前:

$csv = ''; 
foreach ($list as $item) 
{ 
    $csv .= join("\t", $item)."\r\n"; 
} 
+0

$ sudo yum install php-mbstring顯示錯誤無法打開/讀取文件repomd.xml – mum

+0

@mum:聯繫服務器的系統管理員,告訴他們您需要PHP的mbstring包。 – hakre

+0

我創建了一個服務器centos,所以我是系統管理員。 – mum