人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHP の関数で、' クオーテーションをつけるものはありますか?

●質問者: kaiketsu
●カテゴリ:インターネット ウェブ制作
✍キーワード:PHP 関数
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● kazu1107
●20ポイント

質問内容がわかりにくいのでもうちょっと補足説明した方がよろしいかと(汗)

たぶん的外れな回答です。

PHPの関数名にクオーテーションがついているものがあるのかどうか、という質問なら、関数名に使える記号はアンダーバーと、アルファベットと数字だけだから無いはずです。

http://q.hatena.ne.jp/

◎質問者からの返答

すみません。'を付加するものです。

'値’とするものです。

addquote とでもいうものです。

つくってもいいのですがあったらとおもって


2 ● m-takagi
●20ポイント

「関数の名前に『'』」を含むもの」という意味でしたら、そんなものはありません

関数名は、PHP の他のラベルと同じ規則に従います。関数名として有効な 形式は、まず文字かアンダースコアで始まり、その後に任意の数の文字・ 数字・あるいはアンダースコアが続くものです。正規表現で表すと、 [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]* となります。

実際に

<?php
function a'b() {
 return true;
}
?>

というスクリプトを書いて実験してみれば、Parse Error になることがわかります。

◎質問者からの返答

すみません。単に引数の値に対して,'をつけてかえすだけのものです。


3 ● ito-yu
●20ポイント

DB関係の関数で、文字列をDBに適切な形でエスケープしてクォートを付けてくれる物は多数ありますが、ただ'を付けるというのは無いんじゃないでしょうか。

要求仕様がわかれば、どれかが代用できるかもしれません。

以下のそれぞれが、どうなれば目的に叶いますか?

文字列 ' → ''' でいいのか?それとも '\'' か?

文字列 \ → '\' でいいのか?それとも '\\' か?

URLはDBアクセス用のクラスであるPDOのクォート用関数http://jp2.php.net/manual/ja/function.pdo-quote.php


4 ● toyoshi
●20ポイント

>'値’とするものです。

という関数はありません。

下記のように自力でやるしかないように思います。

function addquote($var){

return "'".$var."'";

}

http://www.hatena.ne.jp


5 ● pkb_wn
●20ポイント

[[PostgreSQL]]なら pg_escape_string

http://jp.php.net/manual/ja/function.pg-escape-string.php

[[MySQL]]なら mysql_escape_string

http://jp.php.net/manual/ja/function.mysql-escape-string.php

といったものがあります。

[[Oracle]]やMS [[SQLServer]]には見当たりませんでしたので

MSSQLServerであれば

str_replace("'","''",strValue)

http://jp.php.net/manual/ja/function.str-replace.php

とstr_replace関数で自前指定が必要でしょう。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ