Mediawiki的~~~~签名日期乱码Bug及解决


在使用~~~~进行签名时日期后面是乱码。

解决办法:

从EditPage.php追究到
includes\Parser.php文件中第2876行。

/* Note: This is the timestamp saved as hardcoded wikitext to
* the database, we use $wgContLang here in order to give
* everyone the same signiture and use the default one rather
* than the one selected in each users preferences.
*/
$d = $wgContLang->timeanddate( date( 'YmdHis' ), false, false) .
// ' (' . date( 'T' ) . ')';
' (' . iconv( "gb2312", "UTF-8",date( 'T' )) . ')';

用iconv编码之后bug就解决了。


原因在于使用date函数直接取的时区表示应该是根据本机编码格式,而在我做试验的机器上,本机编码是gb2312,因此将它转为UTF-8,乱码问题就解决了。

你可能感兴趣的:(PHP)