Fri, June 22, 2007
MediaWiki記法で記述されたテキストをHTMLに変換する(PEAR TextWikiMediawiki)
前回Wiki記法で書かれたテキストをPEARのTextWikiを使って HTMLに変換することができたが、 Wikipediaは、MediaWikiを使っているため、TextWikiだけでは、不十分。 そこで、TextWikiMediawikiというモジュールを使用することにした。
コード
使い方は、Text_Wikiと同じ。
require_once("Text/Wiki.php");
$wiki=new Text_Wiki();
の二行を以下の二行に差し換えるだけで使えます。
require_once("Text/Wiki/Mediawiki.php");
$wiki=new Text_Wiki_Mediawiki();
test.php
<?php
//require_once("Text/Wiki.php");
//$wiki=new Text_Wiki();
require_once("Text/Wiki/Mediawiki.php");
$wiki=new Text_Wiki_Mediawiki();
// Configuration
$wiki->deleteRule( 'Wikilink' ); // remove a rule for auto-linking
$wiki->setFormatConf( 'Xhtml' , 'translate' , false ) ; // remove HTML_ENTITIES
$text="* 日本語";
echo($wiki->transform($text,'xhtml'));
?>
以下のように実行。
$ php test.php
HTMLが標準出力される。
TextWikiMediawikiのインストール
$ su
# pear list
# pear install Text_Wiki_Mediawiki
で、インストールできると思ったが、実際には、エラーになってしまった。(Vine3.2を使用。)
Failed to download pear/Text_Wiki_Mediawiki within preferred state "stable", latest release is version 0.1.0, stability "alpha", use "channel://pear.php.net/Text_Wiki_Mediawiki-0.1.0" to install
Cannot initialize 'Text_Wiki_Mediawiki', invalid or missing package file
Package "Text_Wiki_Mediawiki" is not valid
アルファバージョンではインストールできないということなので、
# pear install Text_Wiki_Mediawiki-alpha
として、パッケージ名の後ろに {strong:-alpha} をつけることで、強制的にインストールする。