Discuz! 導出搜索用戶比實際少的問題
來源:易賢網(wǎng) 閱讀:920 次 日期:2014-09-02 17:12:30
溫馨提示:易賢網(wǎng)小編為您整理了“Discuz! 導出搜索用戶比實際少的問題”,方便廣大網(wǎng)友查閱!

問題現(xiàn)象:

后臺用戶管理搜索用戶然后導出,導出的用戶數(shù)比實際的少

問題分析:

Discuz! 函數(shù)中的使用的是diconv函數(shù)進行的轉換,通過調試發(fā)現(xiàn)轉換為GBK編碼的時候使用iconv函數(shù)進行轉換時,字符被截取了。但是 $out = iconv($in_charset, $out_charset.'//IGNORE', $str); 是帶有 ‘//IGNORE ’ 代表遇到轉換不了的字符忽略,然而還是被截取了。最后查資料發(fā)現(xiàn)是iconv的bug,將iconv從‘glibc’ 更改為 ‘libiconv ’ (重新編譯iconv模塊) 或者,使用 mb_convert_encoding來進行轉換

解決方法:

1、 Linux環(huán)境重新編譯iconv, 從‘glibc’ 更改為 ‘libiconv ’ (具體編譯請到網(wǎng)上搜索相關資料)

2、使用mb_convert_encoding 代替 iconv

打開:source/function/function_core.php

function diconv($str, $in_charset, $out_charset = CHARSET, $ForceTable = FALSE) {

global $_G;

$in_charset = strtoupper($in_charset);

$out_charset = strtoupper($out_charset);

if(empty($str) || $in_charset == $out_charset) {

return $str;

}

$out = '';

if(!$ForceTable) {

if(function_exists('iconv')) {

$out = iconv($in_charset, $out_charset.'//IGNORE', $str);

} elseif(function_exists('mb_convert_encoding')) {

$out = mb_convert_encoding($str, $out_charset, $in_charset);

}

}

if($out == '') {

$chinese = new Chinese($in_charset, $out_charset, true);

$out = $chinese->Convert($str);

}

return $out;

}

更改為

function diconv($str, $in_charset, $out_charset = CHARSET, $ForceTable = FALSE) {

global $_G;

$in_charset = strtoupper($in_charset);

$out_charset = strtoupper($out_charset);

if(empty($str) || $in_charset == $out_charset) {

return $str;

}

$out = '';

if(!$ForceTable) {

if(function_exists('mb_convert_encoding')) {

$out = mb_convert_encoding($str, $out_charset, $in_charset);

}elseif(function_exists('iconv')) {

$out = iconv($in_charset, $out_charset.'//IGNORE', $str);

}

}

if($out == '') {

$chinese = new Chinese($in_charset, $out_charset, true);

$out = $chinese->Convert($str);

}

return $out;

}

提示: 使用mb_convert_encoding 函數(shù)需要開啟mbstring模塊

更多信息請查看IT技術專欄

更多信息請查看CMS教程
易賢網(wǎng)手機網(wǎng)站地址:Discuz! 導出搜索用戶比實際少的問題
由于各方面情況的不斷調整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢?yōu)闇剩?/div>
相關閱讀CMS教程

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權所有:易賢網(wǎng)