
スキルアップ
2021.04.15
社会人におすすめなプログラミングスクールの条件とは?目的別25校と選び方
突然ですが、社会人に最適なプログラミングスクールの条件とは何かをご存じですか?本記事では「未経験からIT業界に就職したい」「今の職場でスキルアップしてから転職したい」という20代~30代に向けて、元エンジニアがおすすめの […]
PHP
2019.06.12
文字列内で改行させたい場合や ダブルクォーテーションを出力させたい場合など、通常の記述では意図した出力結果が得られない処理を、特殊な文字の組み合わせを記述することで実現することを エスケープ処理と言います。
今回は PHP のエスケープ処理について紹介します。
PHP【文字列】文字列の連結
PHP【文字列】explode で文字列を分割
PHP【文字列】str_replace で文字列を置換
PHP【文字列】文字列の検索
PHP【文字列】文字列の比較
PHP【文字列】substr で文字列の抽出
PHP【文字列】数値に変換
PHP【文字列】strlen で文字列の長さを取得
PHP【文字列】trim で空白を削除
PHP【文字列】sprintf でフォーマット
PHP【文字列】エスケープ処理(本ページ)
尚、本サイトでは XAMPP( ザンプ )という開発環境を使用しています。
XAMPP のインストール方法や起動方法については以下の記事をご参照下さい。
PHP【 開発環境 】XAMPP インストール
PHP【 開発環境 】XAMPP の使い方
最終更新日:2019年6月12日
1.エスケープ処理とは
2.エスケープシーケンス一覧
3.エスケープ処理のサンプル
文字列の開始や終了を意味する引用符の「 ” 」や「 ‘ 」のように普通に記述するだけでは出力されない文字を出力させたり、文字列内で改行させる場合等、意図した通りの出力結果を得るために 特殊な文字の組み合わせを記述することを エスケープ処理といいます。
直後の文字について、通常とは異なる処理をするという意味を持つ文字をエスケープ文字といいます。
エスケープ文字は、プログラム言語や文字の前後関係によって様々ですが、PHP では、バックスラッシュ( \ )や円マーク( ¥ )をエスケープ文字として使用します。
因みにバックスラッシュ( \ )を入力しても円マーク( ¥ )が表示されることがよくあると思いますが、両者は 言語環境やフォントの種類によって表示が異なる同義の文字です。
改行のように 通常の文字列では記述できない特殊な処理や、通常とは異なる出力処理をする目的で組み合わせられた文字の並びをエスケープシーケンスといいます。
例えば、「 ” 」を出力するために エスケープ文字のバックスラッシュ( \ )を使った場合、「 \” 」という文字の組み合わせがエスケープシーケンスとなります。
PHP の文字列内で使用する主なエスケープシーケンスは次の通りです。
( エスケープ文字は円マークでもバックスラッシュでも同様に使用できます。 )
\n | 改行 |
---|---|
\r | キャリッジリターン(カーソルを先頭に戻す。改行を伴うことが多い) |
\t | 水平タブ |
\v | 垂直タブ |
\f | 改ページ |
\’ | シングルクォーテーション( ‘ ) |
\” | ダブルクォーテーション( ” ) |
\¥ | 円マーク( ¥ ) |
\$ | ドルマーク( $ ) |
\nnn | 8 進数 |
\xnn | 16 進数 |
エスケープ処理をした文字列を出力してみます。
下記のようなソースファイルを作成して ブラウザからアクセスすると、次のような表示になります。
( ソースファイルの作成方法についてはソースファイルを作成を、サーバの起動方法等についてはサーバを起動を、それぞれご参照下さい。)
<?php echo "答えは\"escape\"です。"; echo "<br>"; echo "答えは\'escape\'です。"; echo "<br><br>"; echo '答えは\'escape\'です。'; echo "<br>"; echo '答えは\"escape"です。'; echo "<br><br>"; echo "答えは\tescapeです。"; echo "<br><br>"; echo "答えは\nescapeです。"; ?>
「 echo 」は、データを出力するために使用する PHP の命令です。
ダブルクォーテーション( ” )内でシングルクォーテーション( ‘ )を出力させたい場合は、エスケープ処理は不要です。
上のサンプル中の「 echo “答えは\’escape\’です。”; 」をエスケープ処理無しで「 echo “答えは’escape’です。”; 」と記述すると、「 答えは’escape’です。」と出力されます。
シングルクォーテーション( ‘ )内でダブルクォーテーション( ” )を出力させたい場合も同様です。
文字列中にエスケープシーケンス「 \n 」がある場合はその位置で改行され、「 \t 」がある場合はタブ分のスペースが入ります。
スキルアップ
2021.04.15
突然ですが、社会人に最適なプログラミングスクールの条件とは何かをご存じですか?本記事では「未経験からIT業界に就職したい」「今の職場でスキルアップしてから転職したい」という20代~30代に向けて、元エンジニアがおすすめの […]
スキルアップ
2021.04.15
Webディレクターとは、Webサイト制作や、企画、運用の現場においてリーダーの役割を担う職種です。多くの業務をこなすため大変な仕事ではありますが、その分やりがいや魅力もある仕事です。本記事では、Webディレクターの具体的 […]
スキルアップ
2021.04.14
IT業界やエンジニアという職種に対してなんとなくイメージは持っているものの、具体的にどんな仕事をしているのか詳しく知らないという方もいらっしゃるでしょう。本記事では、IT業界とはどんな業界なのかをわかりやすく解説。各業種 […]
スキルアップ
2021.04.02
IT業界未経験からITエンジニアへ転職しようとするとき、強い味方になってくれるのが資格です。IT系の資格試験には数多くの種類があり、取得することでスキルの証明が可能。本記事では、未経験者が就職を有利にするためのおすすめ資 […]
スキルアップ
2021.04.01
「プログラミングができると就活が余裕らしいけど、大学生のうちにプログラミングを学ぶメリットって何?」と考えている方に向けて、本記事では元エンジニアである筆者がこれまでの経験則をもとに、在学中にプログラミングを学習するメリ […]
スキルアップ
2021.04.01
【2021年最新】いざJava SE 11のBronze資格にチャレンジしようと思っても「申込方法が複雑すぎて難しい…」と困っている方も多いのでは?本記事では、2020年に新しくなったOracle認定Javaプログラマ試 […]
INTERNOUS,inc. All rights reserved.