日本語URL変換する為に、phpでPEARを使えるようにする

前回、レンタルサーバーにPEARをインストールする方法を説明しましたがインストールするだけではPEARを使用できません。

phpでREARを参照するにはパスを通さなければなりません。
php.iniを編集してパスを通す方法もありますがレンタルサーバーではphp.iniの編集が面倒だったりします。

そこで実行するphpファイルそのものにインクルードするパスを記す方法を使います。



phpでPEARを使えるようにする方法

ini_set('include_path','.:/home/※※※※/pear/PEAR');
require_once "Net/IDNA2.php";


このパスは借りているレンタルサーバーの環境により変化しますので
それに合わせて変更してください。

■ini_set(‘include_path’,インクルードするフルパス);

インクルードするフルパスにPEARをインストールしたフルパスを指定します。
これでPEARが使えるようになります。

■require_once ファイル名

ファイル名の参照を実行します。
ファイル名をNet/IDNA2.phpとするとNet/IDNA2.phpの関数を使用できるようになります。

Net/IDNA2.phpが存在しない場合はエラーメッセージが出るので
「REAR」か「Net_IDNA2」のインストールが失敗しているのかを見直すと良いかもしれません。

他に日本語URL変換する為にはPunycode変換を使いますが
Punycode変換関数に文字コードを「UTF-8」で渡す必要があります。

「Shift-Jis」からエンコードして渡しても可能ですが使用できる文字の種類が減るので
最初から「UTF-8」にしておきます。

以下、UTF-8を使う設定にする命令を紹介します。

<?php
print '<?xml version="1.0" encoding="UTF-8"?>';
?>


ページ先頭に書きます。

認識されエラーとなる場合があります。
これを回避する為「print」または「echo」で出力するようにします。

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>


メタタグでもUTF-8を使うように設定します。

mb_internal_encoding('UTF-8');

■mb_internal_encoding(‘UTF-8’);

phpの内部文字コードを日本語に設定します。

最後にUTF-8でphpファイル自体も保存します。
TeraPad等の文字コードを指定して保存できるツールを使い保存します。

これでPunycode変換する準備ができました。
いよいよ次回はエンコードやデコードします。

スポンサーリンク







シェアする

  • このエントリーをはてなブックマークに追加

フォローする

関連記事



スポンサーリンク