質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

1568閲覧

PHPでWeb上で文字列を安全なURLへ変換する方法を教えてください。

wizwjyf

総合スコア30

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2015/01/04 02:11

特殊文字が入っている文字列をURLに変換するのに、安全な方法が知りたいです。
いつもは変換したい特別記号が入っている文字列があった場合、特別記号を手動で見つけて配列に入れています。
その際、各記号を置き換えるためにpreg_replaceを使います。

しかし上記のやり方はエラーが発生しやすいので、もっと他に簡単な方法があるのではないかと思っています。

私が求めているものの例です。

lang

1Hans Gunther -> hans-gunther 2Jaren host -> jaeren-hoest 3Rene Agesen -> rene-aagesen

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

lang

1string iconv( string $in_charset, string $out_charset, string $str) 2``` を使うといいと思います。 3下記マニュアル 4[http://www.php.net/manual/ja/function.iconv.php](http://www.php.net/manual/ja/function.iconv.php) 5 6これがコードです: 7 8```lang-<ここに言語を入力> 9setlocale(LC_ALL, 'en_US.UTF8'); 10 11function testFormat($str, $replace=array(), $delimiter='-') { 12 if( !empty($replace) ) { 13 $str = str_replace((array)$replace, ' ', $str); 14 } 15 16 $arg = iconv('UTF-8', 'ASCII//TRANSLIT', $str); 17 $arg = preg_replace("/[^a-zA-Z0-9/_|+ -]/", '', $str); 18 $arg = strtolower(trim($arg, '-')); 19 $result = preg_replace("/[/_|+ -]+/", $delimiter, $arg); 20 21 return $result; 22} 23$str = "Hallo World *!@#$%^&*()eingeben..."; 24echo testFormat($str); 25//出力: hallo-world-eingeben

投稿2015/01/04 03:58

emperor

総合スコア427

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問