-1

私は完全な初心者であり、文字列をフォーマットするという考えは私には明確ではありません。以下の例のように文字列をフォーマットする必要があるのはなぜですか? マニュアルにあるものとは異なり、短く明確な回答をお願いします。マニュアルが何を言おうとしているのかわかりません。

$query=sprintf("SELECT COUNT(id) FROM users WHERE UPPER(username) = UPPER('%s')",
     mysql_real_escape_string($name));
4

5 に答える 5

0

ドキュメントは私には明らかです。

フォーマット文字列 format に従って生成された文字列を返します。

目的のフォーマットを指定できます。あなたが提供している例では、これにアプローチするのは本当に良い方法ではありません。準備済みステートメントとパラメーターをバインドする機能をサポートする pdo または mysqli を使用することをお勧めします。

于 2013-07-04T17:46:21.733 に答える
0

sprintf は、書式設定文字列 format に従って書式設定された文字列を返します。

形式は次のとおりです。

string sprintf ( string $format [, mixed $args [, mixed $... ]] )

ここでは、クエリで '%s' を使用しました。その後、値を指定しています。

例えば ​​:

<?php
$num = 5;
$location = 'tree';

$format = 'There are %d monkeys in the %s';
echo sprintf($format, $num, $location);
?>

出力 : 「木にはサルが 5 匹います」

詳細については、http: //php.net/manual/en/function.sprintf.phpを参照してください。

于 2013-07-04T17:46:52.267 に答える