サイト上に表示させる仕組みを作っています。
表示する場合はURLにタイトル名をいれて、そのタイトルをGETして
マッチした動画が再生されるようにしました。
▼
もしタイトルが「漫☆画太郎」だった場合、URLは
http://xxx.jp/漫☆画太郎
となり正常に表示されます。ところがタイトルが
「漫/画太郎」や「漫?画太郎」の時は
http://xxx.jp/漫/画太郎
↑階層が違ってしまう
http://xxx.jp/漫?画太郎
↑「画太郎」がパラメータと認識されてしまう
などからうまく表示できません。
▼
そこでYoutubeから読み込む際に
$title = str_replace('&','&', $title);
$title = str_replace('/','/', $title);
などとして全角に変換しているのですが、他にも変換が必要な文字列があり
記述もあまりスマートではありません。またすべての文字列を半角→全角に
する方法もあると思いますが、実際に弊害がある文字列のみ変換したいと
思っております。
何か良い方法があればご教授お願い致します。
そういう場合は、URLエンコードを使うのが定石です。Wikipediaで採られている方式です。
ブラウザやサーバによっては全角文字が含まれたURLを受け付けないので、すべてをURLエンコードすべきです。
pahooさん
ご回答ありがとうございます。
なるほど確かにURLエンコードという言葉をどこかで聞いたような気がしました。
これから検証してみます。ありがとうございました!!