違いがよく分からないのですが、
用語的には、同じ意味なのでしょうか?

例えば、以下の使い方は、意味が通ってるでしょうか?
・「クォートされるべき文字」をクォートする
・「クォートされるべき文字」をエスケープする
・「クォートされるべき文字」をエンコードする

このQ&Aに関連する最新のQ&A

A 回答 (3件)

>意味が通ってるでしょうか?



あっているといえば(通っている)、あっているし、違うといえば違う。

その3つ、全部違う事です。似た場面で、同じ効果を持つので、同じように使われる事があるだけで、違う事を指しています。

例えば「エスケープ」

これは
http://ejje.weblio.jp/content/Escape

が訳ですが、

プログラム言語(HTMLやJavaScriptなどスクリプトやマークアップ言語も)では、

http://hodade.adam.ne.jp/seiki/page.php?study_es …

このような意味です。
「これらの文字を、通常の文字列として認識させる場合は、エスケープしてください」

特定の予約語などキャラクター文字は、その言語の書式上では特殊な意味をもってしまうので、「エスケープして」つまり、「はずれるとか逃れる」という意味で使う。

同じ効果として、「クォート」すると言う操作もある。これは上記のエスケープと違い、文字列(数字とかキャラクターも含む)を特定のマークで囲う。行為の事を指す。

そのまま、「クォート」しないで記述すると、文字列として扱わずに、プログラムの命令文として効果を発揮していまったり、文字列を、文字型として定義させ、認識させることです。

これを大きく言えば、上記の「はずれるとか逃れる」の意味に含まれるが、用途は全く違います。


エンコードは、上記2つと全く違い、元の文字を特定の方式にしたがって、別の文字列に置き換える事をさします。効果としては、エスケープ効果にも役立ちます。

例えば、文字列にスペースを含む物が渡す事ができない場合、エンコードすると、スペースも文字列として変換されるので、エスケープした効果と同じになります。


結果の効果から見ると、質問の3つの文は、特定のシュチュエーションを考えれば成り立つが、それぞれ意味が違うので、ちゃんと何をすることが、エンコードと言うのか認識してから文献をよみましょう。
    • good
    • 1
この回答へのお礼

回答ありがとうございました。

>あっているといえば(通っている)、あっているし、違うといえば違う。
>その3つ、全部違う事です。似た場面で、同じ効果を持つので、同じように使われる事があるだけで、違う事を指しています。
>エンコードは、上記2つと全く違い、元の文字を特定の方式にしたがって、別の文字列に置き換える事をさします。効果としては、エスケープ効果にも役立ちます。
説明、大変分かりやすかったです。
勉強になりましたー

お礼日時:2011/12/10 11:21

クォートとエスケープは現状では同じ意味として使われています。


本来は、
クォート:「決まった文法の中で特別な意味を持った文字の特別な意味をなくしその文字そのものと扱いたい時に行うこと」
エスケープ:「文字に元の意味で無い別の意味を与えるときに行うこと」
と全く別なのですが。

クォートの例:
・カンマを区切りで無くカンマという文字そのものとして扱うために引用符で囲む
 CSV形式で、 abc,def,"hi,jk",lmn
・引用符の中で引用符自体を引用の終わりを意味するので無く引用符文字自体として扱いたい
 VisualBasicだと、"abc""def" の用に"でクォートする
 他の多くの言語だと、"abc\"def" のように\でクォートする

エスケープの例:多くの言語で文字列の中で \n が改行を表す。\がエスケープ文字

どちらも、" " ' 'で囲ったり、 \ を前置したりするので、混同されて現在は両方ともエスケープと書かれていることが多いです。

エンコードにはいろいろな意味がありますが、クォート・エスケープと混同されるような意味でのエンコードというと、「決まった文法の中で特別の意味を持った文字を、その文字そのものとして扱いたいので別の表現で表すこと」という感じでしょうか。

例:HTMLの中で < はタグの始まりを表すので、< と言う文字自体を表したければ &lt; とエンコードする
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

>クォートとエスケープは現状では同じ意味として使われています。
>本来は、
>クォート:「決まった文法の中で特別な意味を持った文字の特別な意味をなくしその文字そのものと扱いたい時に行うこと」
>エスケープ:「文字に元の意味で無い別の意味を与えるときに行うこと」
>と全く別なのですが。
この説明、大変分かりやすかったです。
参考になりましたー

お礼日時:2011/12/10 11:23

もう一つおまけ。



エンコードをネットで調べると

http://search.yahoo.co.jp/search?p=%E3%82%A8%E3% …

デジタル信号化、暗号化と言う意味であることが分かる。

暗号化(エンコード(符号か))、復号化(デコード)

と言うこと。

しかし、

http://search.yahoo.co.jp/search?p=%E3%82%A8%E3% …

なんて検索すると、Wikiとは違う説明の話になる(だからと言ってそのページWikiは間違っているわけではない)。

そう、その分野では、違って使われる事が多いので、プログラム言語で言っているのか、映像などデジタル化での話しなのか文脈から判断するしかない。

http://www.phpbook.jp/func/string/index5.html

http://pbs.darkgray.net/tips/tipshow.php?textser …

質問内容も、それぞれの単語の英語の意味で捉えてしまうと、みんな同じにみててくるが、ちゃんと、それぞれプログラム言語では、なにをすることが「クォート」「エスケープ」「エンコード」なのかネット上で調べれば、すぐわかることです。
    • good
    • 0
この回答へのお礼

追加説明、ありがとうございましたー

お礼日時:2011/12/10 11:21

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q最近「カミングアウト」ってよく聞くけど、どういう意味?

最近テレビなどで、「カミングアウト」という言葉をよく耳にします。
国語辞典にはのっていませんでした。
どういう意味なのか非常に気になります。知っている人がいれば、
教えてください。

Aベストアンサー

<coming out of closet>(押入から出てくる)と言う比喩表現
に由来するとされ、元々は同性愛者が自分自身が同性愛である事
を他人に伝えることでした。
最近では性同一障害を感じている人々、HIV感染の人々につい
ても用いられる様子ですが、実際には広く一般の人も含めて、
自分自身について言い難いことを他人に勇気をもって伝えること
を指して使われているようです。

参考URL:http://www.be-senior.com/inpaku/active/imadoki/ka.html

Q「include」と「file_get_contents」の違いがよく

「include」と「file_get_contents」の違いがよく分かりません。

ネットで調べてみました。
・「include」… 指定したファイルを読み込んで評価
・「file_get_contents」… 指定したファイルの内容を全て読み込んで文字列として返す

で、実際に試してみたのですが、「file_get_contents」の方がよく分かりません。

具体的には、下記を試すと、結果が、tt string(44) "" となるのですが、ttって何ですか?
評価をしないで文字列として返したということでしょうか? それでなんで tt になるのでしょうか?

▼hoge.php
<?php
$s = file_get_contents("test1.php");
var_dump($s);
?>

▼test1.php
<?php
echo ("1どうなるのかな");
?>

Aベストアンサー

include()はPHPの制御構文で、読み込んだファイルを評価して
実行します。当然テキストファイルでないとだめです。
用途としては、共通のソースとか、動的に生成するソースを組み込むのに
使う事が多いです。

file_get_contents()はPHPの外部関数で、ファイルを読み込みます。
画像ファイルとか、Acrobat pdfファイルのようなバイナリーファイルも
読み込めます。(文字列として読み込まれます)

hoge.phpで
<?php
header("Content-type:image/jpeg");
print file_get_contents(hoge.jpg);
?>
とすれば、
<img src="hoge.php">
なんて事もできます。

両方とも、ini設定で許されていれば、ファイル名をURL指定して、
HTTP経由で読み込むことも出来ます。

Qカミングアウトってどういう意味ですか。

最近盛んにつかわれる言葉のようですが、意味がわからないので、どのように反応して良いものか・・・。どうぞよろしくお願いいたします。

Aベストアンサー

質問検索「カミングアウト」でヒットしました。
8f8f8f8fさんのご質問は、医療カテゴリなので、過去の回答の中でも特に、性同一障害、HIV感染の告白と関連があるでしょうか。

参考URL:http://www.okweb.ne.jp/kotaeru.php3?q=61921,http://oshiete1.goo.ne.jp/kotaeru.php3?q=61921

QPHPで値を表示する「echo」「print」「pring_r」「var_dump」の違いや使い方について

ネットで調べたのですが、いまいち難しくて理解できませんでした。
echoは値を返さない、pirintは返すという事はなんとなく理解できたのですが、
やはりどんな時に使い分けするのか分かりません。
それぞれの役割や違い、使い方について教えていただけませんでしょうか。
よろしくお願いします。

Aベストアンサー

「ネットで調べる」というのがどういうことを指すのかわかりませんが、マニュアルの記載以上の情報はなかなかないのではと思います。私はとりあえず公式マニュアルで調べますけど・・。

echoとprintの違いについてはオンラインマニュアルに参考URLが記載されてます。読まれましたか?

  http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40

かくいう私も「echo」は短縮構文でしか使いませんね。複数のパラメータを渡す状況ってちょっとないです(わかりやすいセパレータの文字列で連結して渡すので・・)。

print_rとvar_dumpもマニュアルを熟読すればよろしいかと。

  http://www.php.net/manual/ja/function.print-r.php
  http://www.php.net/manual/ja/function.var-dump.php

Qカミングアウトするとき

ゲイやレズビアンであることをカミングアウトするときは、
相手をどのような存在だと感じてカミングアウトするんですか?

大切な友達だと思えたときですか?
カミングアウトしていない友達は、本当の意味で友達だとは思っていないのでしょうか?

Aベストアンサー

人によって言えることと言えないことがあります。
例えばAとBという友人がいます。
Aの方が仲が良くて大好きな友人だけれど
Aには話せなくてBには話せるということもあります。
親しいからこそ話せないということもありますよ。

ゲイやレズビアンということはかなりデリケートな問題で簡単にカムアウトできるようなことではないです。
なのでもし親友がそうでもし黙っていたとしても「なんで言ってくれないんだ?」なんて言うつもりはないですし、言ってくれなかったことを悲しむつもりもないです。言ってくれたらそれなりにそのことには気を使いますが知らないままの方が友人としての距離を取りやすいので言ってくれない方がありがたいかもしれないですね。
僕がそうだとしたらたぶん親友にはそのことを話しません。
同好の人以外にはしないでしょうね。

Q「クラス関数」「メンバ関数」「メソッド」の違いを教えてください。

「クラス関数」「メンバ関数」「メソッド」の違いを教えてください。

あるサイトに、「クラス関数」=「メンバ関数」と書かれていました。
「メンバ関数」=「メソッド」だと思っているのですが、
そうすると、「クラス関数」=「メンバ関数」=「メソッド」という認識で間違いないでしょうか?

Aベストアンサー

Java や C++ の感覚でいうと下記の様になりますでしょうか。

・「メンバ関数」=「メソッド」
  クラスに定義されている関数(プロシージャ)全般。

・「クラス関数」=「クラスメソッド」=「静的メソッド」
  クラスに定義されている関数の内、静的(static)なもの。インスタンス化せずにアクセスできる。
  http://jp2.php.net/manual/ja/language.oop5.static.php

・「インスタンス関数」=「インスタンスメソッド」
  クラスに定義されている関数の内、静的(static)でないもの。インスタンス(オブジェクト)を通してアクセスする。


この分類によれば、「メンバ関数」には「クラス関数」と「インスタンス関数」の2種類が有ることになります。


文脈によっては「クラス内の関数」という意味で「メンバ関数」全般のことを「クラス関数」という場合も有るかも知れません。

参考URL:http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89_%28%E8%A8%88%E7%AE%97%E6%A9%9F%E7%A7%91%E5%AD%A6%29

Java や C++ の感覚でいうと下記の様になりますでしょうか。

・「メンバ関数」=「メソッド」
  クラスに定義されている関数(プロシージャ)全般。

・「クラス関数」=「クラスメソッド」=「静的メソッド」
  クラスに定義されている関数の内、静的(static)なもの。インスタンス化せずにアクセスできる。
  http://jp2.php.net/manual/ja/language.oop5.static.php

・「インスタンス関数」=「インスタンスメソッド」
  クラスに定義されている関数の内、静的(static)でないもの。インスタンス(オブジ...続きを読む

Q浮気しました。カミングアウトしたいです。

彼女持ち、男です。浮気をしました。カミングアウトしたいですが、カミングアウトしたいのは浮気相手の方です。

浮気相手のその子とキスまで行いました。
しかし、心の中で彼女がいるからとそこで理性が勝ち1度断りましたが、でも正直な気持ちその子とエッチがしたいです。とてもタイプです。

次会う日も決まっています。その子は割と乗り気で恐らく次はエッチをします。
しかし、浮気相手に彼女がいる事をカミングアウトしたい。カミングアウトした上でそれを受け止めてもらってその子と付き合って行きたいんです。気持ちとしてはスッキリしません。とてもクソな考えですが浮気経験のある方にはわかって頂けると思います。

どうかその子へ彼女がいますとカミングアウトする時はエッチした後、する前、一体どのタイミングでどういった風に伝えれば良いでしょうか?

下衆な質問で申し訳ありません!

Aベストアンサー

浮気経験無いので参考程度に

自分は性行為後にカミングアウトした方が良いと思います。

蟠りがある状態で気持ち良い
sexは出来ないと思いますし
女性はsexした相手に情が湧くのでその後、正直に話しても関係は続くと思います。

ですが性行為終了、直後ではなく数日置いてから改めてカミングアウトした方が受け止めて貰える可能性は高いかと。

浮気をしたいのなら、自分を責めず本能に従ってください


楽しいSexLifeを過ごしてください、では。

QWordPressで、ブログタイトルの「'」がエスケープされてしまいます

WordPress2.2.3でブログを運営予定です。
ブログタイトルに、「~'s blog」というように、「'」を使いたいのですが、
管理画面の各種設定>一般設定>ブログ名に、「'」を入力すると、
'が\'とエスケープされてしまい、~\'s blogとなってしまいます。
※実際は\でなくバックスラッシュ

これを回避する方法はあるのでしょうか?
記事中で、勝手にエスケープされてしまうのは、
Kill WPTexturizeプラグインなどで対処できるようなのですが、
ブログタイトルのエスケープは、そのプラグインでは解除できず、悩んでいます。

formatting.phpのwptexturize()が怪しいと思い、
置き換えている部分をコメントアウトしたりしたのですが、
変わらなかったので、wptexturizeは通ってしていない気もします。

対策があれば、教えていただけると助かります。
よろしくお願いします。

Aベストアンサー

今実際にローカルサーバーにインストールしてみましたが、、、
私の環境では表示されましたよ??(参照URLに写真スクリーンショット載せておきます。見れなかったら言ってください)

関係ありませんけどこれは素晴らしいスクリプトですね!!ログイン画面なんかLinuxライクだし・・・これはすごい!!

ちなみにデータベースは初心者なのでphpMyAdminを使って作りました^ ^
作成する際、「照合順序」ってところはなんだかよくわからなかったので適当に utf8_general_ci を指定して作りました

phpやApacheの文字コードの設定関係も、php.ini の mbstring.language をjapaneseで有効にした以外は変更していないので文字化け対策的なことはしていないに等しいです。環境をもう一度見直す(あるいはリセットする)などしてcheer up and try again!!!

photo1(管理画面) :
http://briefcase.yahoo.co.jp/bc/activekid18/vwp2?.tok=bc3YQTaBwNsqE68Z&.dir=/&.dnm=Wordpress_index.jpg.jpg&.src=bc
photo2(ブログ画面) :
http://briefcase.yahoo.co.jp/bc/activekid18/vwp2?.tok=bcwqQTaBBYlsKHUg&.dir=/&.dnm=Wordpress_blog.jpg&.src=bc

今実際にローカルサーバーにインストールしてみましたが、、、
私の環境では表示されましたよ??(参照URLに写真スクリーンショット載せておきます。見れなかったら言ってください)

関係ありませんけどこれは素晴らしいスクリプトですね!!ログイン画面なんかLinuxライクだし・・・これはすごい!!

ちなみにデータベースは初心者なのでphpMyAdminを使って作りました^ ^
作成する際、「照合順序」ってところはなんだかよくわからなかったので適当に utf8_general_ci を指定して作りました

phpやApacheの文字...続きを読む

Qカミングアウト

私は高校3年生のバイセクシュアル(両性愛)です。
私はとても大切にしている友達がいます。彼はとても優しく、何か悩みがあると相談に乗ってくれる人です。
私はそんな彼にカミングアウトしようと思っています。
何故、カミングアウトしようと思ったかというと、彼だけには隠し事をしたくなかったのです。いつも真摯に話を聞いてくれる彼の姿を見て、隠し事を持っている自分に嫌気がさしたからです。また、少しだけ彼に恋愛感情が生まれてしまったことも理由のひとつです。
しかし、私は誰にもカミングアウトしていません。いや、この先も彼以外にはノンケ(異性愛)を貫き通そうと思っています。その事に関しては、私の中では納得してることです。

ですから、どのような感じでカミングアウトしていいのかわからないです。
また、カミングアウトしてから、彼との友情関係がなくなってしまいそうで怖いです。

上記を踏まえて、カミングアウトはどうしたらいいのでしょうか?

お礼は少々遅れてしまうかもしれませんが、よろしくお願いします。

Aベストアンサー

こんにちは!

私の経験上、質問者様がよほど、うまくバイセクシュアルである事を
隠しているのでなければ、彼は薄々、感づいているのではないでしょうかね。

>カミングアウトはどうしたらいいのでしょうか?

失礼ですが、質問者様はまだお若いです。
若い時には誰しもが、失恋の一つや二つするものだと思いますが、如何でしょうか?

私でしたら、告白してしまいます。

QPHPで「®」や特殊文字のエスケープ

PHPでフォームから送られてきたデータを、MySQLに登録する際に、
「®」や特殊文字をエスケープして登録したいのですが、
どのようにしたらいいのでしょうか。

「<」や「&」などはhtmlspecialcharsでエスケープできているのですが、
「®」や特殊文字(~やm2など)がエスケープできず、
文字化けを起こして困っています。

Aベストアンサー

htmlspecialchars()では対応しきれない文字について
htmlのエンティティに変換したいということであれば、

htmlentities()
http://www.php.net/manual/ja/function.htmlentities.php
で対応可能ですが、

違う場合は、具体的にどういうコードを書いていて、どの時点での文字化けを問題にしているかを明確にするといい回答があると思いますよ。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報