%s在这里意味着什么?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了%s在这里意味着什么?相关的知识,希望对你有一定的参考价值。
%s
是什么意思?
$sql = "SELECT *
FROM page_table
WHERE page_name = '%s'
LIMIT 1";
答案
它是一个格式化的字符串,其中%s
是占位符。我怀疑$ sql被交给sprintf将其转换为真正的查询。例:
$name = 'posts';
$sql = "SELECT * FROM page_table WHERE page_name = '%s' LIMIT 1";
$formattedSql = sprintf($sql, $name);
这将生成一个查询,如下所示:
SELECT * FROM page_table WHERE page_name = 'posts' LIMIT 1
当你不想弄乱引号和双引号时,这非常有用。
另一答案
%s
是一个占位符,用于像sprintf这样的函数。查看手册以了解其他可能的占位符。
$sql = sprintf($sql, "Test");
这将用字符串“Test”替换%s
。它还用于确保传递的参数实际上适合占位符。您可以使用%d
作为数字的占位符,但如果sprintf会收到一个字符串,它会抱怨。
另一答案
我猜%s是sprintf的格式符号。
下一行代码可能是这样的:
$sqlquery = sprintf($sql, 'mySearchString');
真正的查询将是:
SELECT * FROM page_table WHERE page_name ='mySearchString'LIMIT 1
另一答案
我们使用%s作为字符代码,因为ASCII 65是'A'所以直到91'Z'才能更好地理解你可以使用for循环从65到91开始在这个for循环打印结果中使用printf
for($i=65; $i<91; $i++){
printf('%s ', chr($i));
}
以上将打印
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z.
另一答案
$sql = "SELECT *
FROM page_table
WHERE page_name = '%s'
LIMIT 1";
$sql = sprintf($sql, "page");
会给你这样的东西。
$sql =select * from page_table where page_name='page' LIMIT 1";
以上是关于%s在这里意味着什么?的主要内容,如果未能解决你的问题,请参考以下文章