### WebLinks 開発者向け 文書

#### 国や言語による違い

#### language_base.php と language_convert.php の説明

共通のlanguage_base.php と 言語パック毎のlanguage_convert.php で吸収している。
language_convert.php は language_base.php からクラスを継承している。
関数の説明を下記に示す。

#### 機能と用途

関数名 | 機能 | 用途
マルチバイト関数を使用するもの
convert_encode_to_utf8 ($text, $encode) | テキスト($text)を指定した文字コード($encode)からUTF-8に変換する | 取得したRSSをUTF-8に変換する。 RSSの文字コードは、XMLのencodingから判断している。 ここが設定されていないものは、UTF-8と見なしている。
convert_from_utf8($text) | テキスト($text)をUTF-8から内部の文字コードに変換する | 取得したRSSを解析した結果を内部コードに変換する
convert_to_utf8($text) | テキスト($text)を内部の文字コードからUTF-8に変換する | RSSを出力するときに、UTF-8に変換する
shorten_text($text,$max) | テキスト($text)を指定した文字数（$max）で丸める | 要約を作成する
send_mail ($mailto, $subject, $body, $header) | メールを送信する 引数はPHPのmail関数と同じ | コマンドラインで使用する
マルチバイト関数を使用する（日本語環境に特有なもの）
convert_telafriend_subject($text) | テキスト($text)を内部の文字コードから別の文字コードに変換する | 「友達に報告」の文字化け対策
convert_telafriend_body($text) | 同上 | 同上
convert_download_filename($text) | 同上 | 「ダウンロードファイル名」の文字化け対策 今は使用していない
convert_sjis_win_mac($text) | クライアントPC が Windows あるいは MAC のとき、 テキスト($text)を EUC-JP から SJIS へ変換する | 「友達に報告」の文字化け対策
convert_space_zen_to_han($text) | テキスト($text)の全角空白を半角空白に変換する | 検索時に全角空白を単語の区切りとする
マルチバイト関数を使用しないもの
get_google_url() | この関数で設定した googleサイトのURLを取得する | このURLが、 リンク情報を検索するサイトとなる
get_country() | この関数で設定した 国名を取得する | この国名を元に、 地図サイトのリンク方法を選択する
get_happy_linux_url() | この関数で設定した 開発元のサイトのURLを取得する | このURLが Powered by のリンク先となる
presume_agent() | ブラウザの agent を推測する | 「友達に報告」の文字化け対策

#### 言語と国による処理の違い

関数名 | デフォルト（英語） language_base.php | 日本語 language_convert.php | その他の言語
マルチバイト関数を使用する
convert_encode_to_utf8($text, $encode) | 指定された文字コードからUTF-8に変換する utf8_encode関数を使用する | 指定された文字コードからUTF-8に変換する mb_convert_encoding関数を使用する | 指定された文字コードからUTF-8に変換する
convert_from_utf8($text) | UTF-8からUS-ASCIIに変換する utf8_decode関数を使用する | UTF-8からEUC-JPに変換する mb_convert_encoding関数を使用する | UTF-8からその国の文字コードに変換する
convert_to_utf8($text) | US-ASCIIからからUTF-8に変換する utf8_encode関数を使用する | EUC-JPからからUTF-8に変換する mb_convert_encoding関数を使用する | その国の文字コードからUTF-8に変換する
shorten_text($text,$max) | substr関数を使用する | mb_strimwidth関数を使用する | その国の文字コードに合わせて、文字列を丸める
send_mail($mailto, $subject, $body, $header) | mail関数のラッパー | mb_send_mail関数のラッパー | その国の文字コードに合わせて、メール関数を設定する
マルチバイト関数を使用する（日本語環境に特有なもの）
convert_telafriend_subject($text) | 何もしない | EUC-JPをSJISに変換する convert_sjis_win_mac() を呼び出す | 特に必要なし
convert_telafriend_body($text) | 同上 | 同上 | 同上
convert_download_filename($text) | 同上 | 同上 | 同上
convert_sjis_win_mac($text) | --- | EUC-JPをSJISに変換する mb_convert_encoding関数を使用する | 同上
convert_space_zen_to_han($text) | 何もしない | 全角空白を半角空白に変換する mb_convert_kana関数を使用する | 同上
マルチバイト関数を使用しないもの
get_google_url() | http://www.google.com/search? hl=en&amp;q= | http://www.google.co.jp/search? hl=ja&amp;q= | その国に合わせてサイトを設定する
get_country() | usa | japan | 特に必要なし 米国と異なるときは、テンプレートを変更する必要あり
get_happy_linux_url() | http://linux2.ohwada.net/ | http://linux.ohwada.jp/ | 特に必要なし
presume_agent() | ブラウザのagentを推測する | --- | ---

目次
$Id: lang_conv.html,v 1.3 2005/10/28 11:56:02 ohwada Exp $