GVKun编程网logo

PHP之sprintf函数用法详解(php sprintf函数的用法)

21

想了解PHP之sprintf函数用法详解的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于phpsprintf函数的用法的相关问题,此外,我们还将为您介绍关于c程序printf函数用法是什么、

想了解PHP之sprintf函数用法详解的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于php sprintf函数的用法的相关问题,此外,我们还将为您介绍关于c程序printf函数用法是什么、matlab中fprintf函数的用法详解、PHP echo, print, printf, sprintf函数的区别和使用、PHP echo,print,printf,sprintf函数之间的区别与用法详解的新知识。

本文目录一览:

PHP之sprintf函数用法详解(php sprintf函数的用法)

PHP之sprintf函数用法详解(php sprintf函数的用法)

《PHP实战:PHP之sprintf函数用法详解》要点:
本文介绍了PHP实战:PHP之sprintf函数用法详解,希望对您有用。如果有疑问,可以联系我们。

本文实例讲述了PHP中sprintf函数的用法.分享给大家供大家参考.具体用法分析如下:PHP实战

sprintf()函数在PHP官方是说把字符串格式化输出了,本文就来给各位朋友介绍一下在学习sprintf()函数时的一些经验分享,希望能给大家带来赞助.PHP实战

PHP函数 sprintf() 函数官方定义为:sprintf():把格式化的字符串写入一个变量中PHP实战

语法为:sprintf(format,arg1,arg2,arg++);PHP实战

参数:PHP实战

format:必须,转换格式PHP实战

arg1 :必须,规定插入 format 字符串中第一个%符号处的参数PHP实战

arg1 :可选,规定插入 format 字符串中第二个%符号处的参数PHP实战

arg1++:可选,规定插入 format 字符串中第三、四等%符号处的参数PHP实战

参数 format 的转换格式,以百分比符号(%)开始到转换字符结束,下面是有可能的format值.PHP实战

%% C 返回百分比符号PHP实战

%b C 二进制数PHP实战

%c C 按照 ASCII 值的字符PHP实战

%d C 带符号十进制数PHP实战

%e C 可续计数法(比如 1.5e+3)PHP实战

%u C 无符号十进制数PHP实战

%f C 浮点数(local settings aware)PHP实战

%F C 浮点数(not local settings aware)PHP实战

%o C 八进制数PHP实战

%s C 字符串PHP实战

%x C 十六进制数(小写字母)PHP实战

%X C 十六进制数(大写字母)PHP实战

下面是一些demo,代码如下:
PHP实战

代码如下:
// 1. %% :把 %% 替换成 % 
$str = '测试一下 %% 这个参数,会被替换成什么'; 
echo sprintf($str); 
//返回结果: 测试一下 % 这个参数,会被替换成什么(%%被替换成一个%) 

// 2. %b :该参数只能替换整型数据,如果是浮点型,只会取整数部分,会忽略小数点后面的数据.如果是非整型数据.返回 0 
$str = '参数 %b 会替换成二进制数'; 
$arg = '10'; 
echo sprintf($str,$arg); 
//返回结果:参数 1010 会替换成二进制数 
$arg = 10.23; 
echo sprintf($str,$arg); 
//返回结果:参数 1010 会替换成二进制数 
$arg = 'abc'; 
echo sprintf($str,$arg); 
//返回结果:参数 0 会替换成二进制数 PHP实战

// 3. %c 返回字符编码的ASCII码 
$arg = 65; 
$str =  "数字 {$arg} 对应的ASCII码为 %c "; 
echo sprintf($str,$arg); 
//返回结果:数字 65 对应的ASCII码为 A 
 
// 4. %d 将一段字符里的%d替换成int型,数据要求同 $b 相同 
$str = 'ID号为 %d '; 
$arg = -3; 
echo sprintf($str,$arg); 
//返回结果:ID号为 -3 
$arg = 4.5; 
echo sprintf($str,$arg); 
//返回结果:ID号为 4 
$arg = 'abc'; 
echo sprintf($str,$arg); 
//返回结果:ID号为 0 
 
// 5. %s - 字符串 
$str = "这是用来测试的sprintf的字符串( %s ).今天消费了%f元.从钟楼到小寨有%d站.上班"; 
$arg = '%s'; 
echo sprintf($str,$arg,6,5); 
//返回结果:这是用来测试的sprintf的字符串( %s ).今天消费了6.000000元.从钟楼到小寨有5站.上班PHP实战


至于其它的参数,大家可以试着测试一下.

下面说一下这个函数的一些用途,比如我们在对一张数据表所有数据做多个字段更新时,如果使用循环更新的话,那是很耗费资源的,这里就要用到我们sprintf()函数了.PHP实战

在数据库批量更新时,我一般采用 case then when end 的语法来做,基本语法如:
PHP实战

代码如下:
UPDATA table 
    SET field = CASE id 
        WHEN 1 THEN 'value1' 
        WHEN 2 THEN 'value2' 
        WHEN 3 THEN 'value3' 
    END 
WHERE id IN (1,2,3)

上面的意思就是说,更新 table 设置 id = 1 的值为 value1,id = 2 的值为 value2,id = 3 的值为 value3,这样参数上面的函数将sql语句结合成这样sql语句,只需一条sql就可以进行批量更新,具体的办法为:
代码如下:
//比如 id 对应的值为以下数组 
$info = array(1=>'张三',2=>'李四',3=>'王五'); 
$ids = implode(',',array_keys($info)) //获取所有的ID字符串 
//组合sql 
$sql = "UPDATA user SET username = CASE id"; 
foreach($info as $id=>$username){ 
     $sql .= sprintf("WHEN %d THEN %s",$id,$username); 

$sql .= "END WHERE id IN ($ids)"; 
// $model->query($sql)

上面就可以完成批量更新的操作,后面的 where子句确保只有3行数据执行.PHP实战

希望本文所述对大家的PHP程序设计有所赞助.PHP实战

《PHP实战:PHP之sprintf函数用法详解》是否对您有启发,欢迎查看更多与《PHP实战:PHP之sprintf函数用法详解》相关教程,学精学透。小编 jb51.cc为您提供精彩教程。

c程序printf函数用法是什么

c程序printf函数用法是什么

c语言是一种广泛使用的编程语言,而printf函数是c语言中最常用的函数之一。它用于向屏幕上输出文本和变量的值。在本文中,我们将详细介绍printf函数的用法和一些常见的格式化选项。

首先,让我们来看一下printf函数的基本语法:

int printf(const char *format, ...);
登录后复制

printf函数接受一个格式化字符串作为第一个参数,该字符串指定了输出的格式。在格式化字符串中,可以插入占位符,用于指定要输出的变量的类型和格式。占位符以百分号(%)开头,后面跟着一个或多个字符,用于指定变量的类型和格式。

下面是一些常见的占位符及其用法:

- %d:用于输出整数。

- %f:用于输出浮点数。

- %c:用于输出字符。

- %s:用于输出字符串。

除了这些基本的占位符外,printf函数还支持一些格式化选项,用于指定输出的格式。下面是一些常见的格式化选项:

- %10d:指定输出的字段宽度为10个字符,如果输出的整数不够宽,则在左边填充空格。

- %-10d:指定输出的字段宽度为10个字符,如果输出的整数不够宽,则在右边填充空格。

- %.2f:指定输出浮点数的小数点后保留两位。

- %10.2f:指定输出的字段宽度为10个字符,浮点数的小数点后保留两位。

下面是一些示例,演示了printf函数的用法:

int main() {
int num = 10;
float pi = 3.14159;
char letter = 'A';
char name[] = "John";
printf("The number is %d\n", num);
printf("The value of pi is %.2f\n", pi);
printf("The letter is %c\n", letter);
printf("The name is %s\n", name);
return 0;
}
登录后复制

运行以上代码,将会输出以下结果:

The number is 10
The value of pi is 3.14
The letter is A
The name is John
登录后复制

在上面的示例中,我们使用了不同的占位符和格式化选项来输出不同类型的变量。注意,在格式化字符串中,占位符的顺序必须与变量的顺序一致。

此外,printf函数还支持一些其他的转义字符,用于输出特殊字符,如换行符(\n)、制表符(\t)等。这些转义字符可以在格式化字符串中直接使用。

总结起来,printf函数是C语言中用于输出文本和变量的值的重要函数。通过使用不同的占位符和格式化选项,我们可以灵活地控制输出的格式。希望本文能够帮助你更好地理解和使用printf函数 。

以上就是c程序printf函数用法是什么的详细内容,更多请关注php中文网其它相关文章!

matlab中fprintf函数的用法详解

matlab中fprintf函数的用法详解

matlab中fprintf函数的用法详解

matlab中fprintf函数的用法详解:

fprintf函数可以将数据按指定格式写入到文本文件中。其调用格式为:

数据的格式化输出:fprintf(fid, format, variables)

按指定的格式将变量的值输出到屏幕或指定文件,fid为文件句柄,若缺省,则输出到屏幕

format用来指定数据输出时采用的格式

    %d 整数

  %e 实数:科学计算法形式

  %f 实数:小数形式

  %g 由系统自动选取上述两种格式之一

  %s 输出字符串

fprintf(fid,format,A)
登录后复制

说明:fid为文件句柄,指定要写入数据的文件,format是用来控制所写数据格式的格式符,与fscanf函数相同,A是用来存放数据的矩阵。

例 创建一个字符矩阵并存入磁盘,再读出赋值给另一个矩阵。

>> a='string';
>> fid=fopen('d:\char1.txt','w');
>> fprintf(fid,'%s',a);
>> fclose(fid);
>> fid1=fopen('d:\char1.txt','rt');
>> fid1=fopen('d:\char1.txt','rt');
>> b=fscanf(fid1,'%s')
b =
string

matlab读txt文件

fid=fopen('fx.txt','r');
%得到文件号
[f,count]=fscanf(fid,'%f %f',[12,90]);
%把文件号1的数据读到f中。其中f是[12 90]的矩阵
%这里'%f %f'表示读取数据的形势,他是按原始数据型读出
fclose(fid);
%关闭文件
另外有的txt文件还可以用load来打开
其语句为
f=load('fx.txt)
登录后复制

推荐教程: 《php教程》

以上就是matlab中fprintf函数的用法详解的详细内容,更多请关注php中文网其它相关文章!

PHP echo, print, printf, sprintf函数的区别和使用

PHP echo, print, printf, sprintf函数的区别和使用

1. echo函数:

输出函数,是命令,不能返回值。echo后面可以跟很多个参数,之间用分号隔开,如:
echo $myvar1;
echo 1,2,$myvar,"<b>bold</b>";


2. print函数:

是函数,可以返回一个值,只能有一个参数。

int print ( string arg )

Outputs arg . Returns 1 , always.


3. printf函数:

int printf ( string format [, mixed args [, mixed ...]] )

Produces output according to format , which is described in the documentation for sprintf() .

Returns the length of the outputted string.


把文字格式化以后输出,如:
$name="hunte";
$age=25;
printf("my name is %s, age %d", $name, $age);


4. sprintf函数:

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

Returns a string produced according to the formatting string format .


跟printf相似,但不打印,而是返回格式化后的文字,其他的与printf一样。

 

5. 详细讲解printf()函数:


printf()函数的调用格式为:
printf("<格式化字符串>", <参量表>);


%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%o 无符号以八进制表示的整数
%g 自动选择合适的表示法


说明:

(1). 可以在"%"和字母之间插进数字表示最大场宽。

①例如: %3d 表示输出3位整型数, 不够3位右对齐。

②%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6, 小数点占一位, 不够9位右对齐。

③%8s 表示输出8个字符的字符串, 不够8个字符右对齐。

④如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。

⑤浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;

⑥小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。

⑦若想在输出值前加一些0, 就应在场宽项前加个0。

例如: %04d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽度为4位。

  ⑧如果用浮点数表示字符或整型量的输出格式, 小数点后的数字代表最大宽度, 小数点前的数字代表最小宽度。

例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9, 则第9个字符以后的内容将被删除。


(2). 可以在"%"和字母之间加小写字母l, 表示输出的是长型数。

   ①例如: %ld 表示输出long整数

   ②%lf 表示输出double浮点数


(3). 可以控制输出左对齐或右对齐, 即在"%"和字母之间加入一个"-" 号可说明输出为左对齐, 否则为右对齐。

①例如: %-7d 表示输出7位整数左对齐

②%-10s 表示输出10个字符左对齐


(4). 一些特殊规定字符

    ①\n 换行
②\f 清屏并换页
③\r 回车
④\t Tab符
⑤\xhh 表示一个ASCII码用16进表示,
⑥其中hh是1到2个16进制数

6. printf() : examples

例1: various examples

<?php<br>$n =  43951789;  
$u = -43951789;  
$c = 65; // ASCII 65 is ''A''   
// notice the double %%, this prints a literal ''%'' character  
printf("%%b = ''%b''\n", $n); // binary representation  
printf("%%c = ''%c''\n", $c); // print the ascii character, same as chr() function  
printf("%%d = ''%d''\n", $n); // standard integer representation  
printf("%%e = ''%e''\n", $n); // scientific notation  
printf("%%u = ''%u''\n", $n); // unsigned integer representation of a positive integer  
printf("%%u = ''%u''\n", $u); // unsigned integer representation of a negative integer  
printf("%%f = ''%f''\n", $n); // floating point representation  
printf("%%o = ''%o''\n", $n); // octal representation  
printf("%%s = ''%s''\n", $n); // string representation  
printf("%%x = ''%x''\n", $n); // hexadecimal representation (lower-case)  
printf("%%X = ''%X''\n", $n); // hexadecimal representation (upper-case)  
 
printf("%%+d = ''%+d''\n", $n); // sign specifier on a positive integer  
printf("%%+d = ''%+d''\n", $u); // sign specifier on a negative integer
    
The printout of this program would be:   
%b = ''10100111101010011010101101''
%c = ''A''
%d = ''43951789''
%e = ''4.39518e+7''
%u = ''43951789''
%u = ''4251015507''
%f = ''43951789.000000''
%o = ''247523255''
%s = ''43951789''
%x = ''29ea6ad''
%X = ''29EA6AD''
%+d = ''+43951789''
%+d = ''-43951789''

例2: string specifiers

<?php
$s = ''monkey'';  
$t = ''many monkeys'';  
    
printf("[%s]\n",      $s); // standard string output  
printf("[%10s]\n",    $s); // right-justification with spaces  
printf("[%-10s]\n",   $s); // left-justification with spaces  
printf("[%010s]\n",   $s); // zero-padding works on strings too  
printf("[%''#10s]\n",  $s); // use the custom padding character ''#''  
printf("[%10.10s]\n", $t); // left-justification but with a cutoff of 10 characters
   
   
The printout of this program would be:   
[monkey]  
[    monkey]  
[monkey    ]  
[0000monkey]  
[####monkey]  
[many monke]  

例3:zero-padded integers

<?php  
$isodate = sprintf("%04d-%02d-%02d", $year, $month, $day);

例4:formatting currency

<?php  
$money1 = 68.75;  
$money2 = 54.35;  
$money = $money1 + $money2;  
// echo $money will output "123.1";  
$formatted = sprintf("%01.2f", $money);  
// echo $formatted will output "123.10"   

例5: sprintf() : scientific notation
<?php  
$number = 362525200;  
echo sprintf("%.3e", $number); // outputs 3.63e+8

 

PHP echo,print,printf,sprintf函数之间的区别与用法详解

PHP echo,print,printf,sprintf函数之间的区别与用法详解

这篇文章主要是对PHP中echo,print,printf,sprintf函数之间的区别与用法进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助

1. echo函数:

输出函数,是命令,不能返回值。echo后面可以跟很多个参数,之间用分号隔开,如:
echo $myvar1;
echo 1,2,$myvar,"bold";


2. print函数:

是函数,,可以返回一个值,只能有一个参数。

int print ( string arg )

Outputs arg . Returns 1 , always.


3. printf函数:

int printf ( string format [, mixed args [, mixed ...]] )

Produces output according to format , which is described in the documentation for sprintf() .

Returns the length of the outputted string.


把文字格式化以后输出,如:
$name="hunte";
$age=25;
printf("my name is %s, age %d", $name, $age);


4. sprintf函数:
string sprintf ( string format [, mixed args [, mixed ...]] )

Returns a string produced according to the formatting string format .


跟printf相似,但不打印,而是返回格式化后的文字,其他的与printf一样。


5. 详细讲解printf()函数:

printf()函数的调用格式为:
printf("", );


%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%o 无符号以八进制表示的整数
%g 自动选择合适的表示法


说明:

(1). 可以在"%"和字母之间插进数字表示最大场宽。

 ①例如: %3d 表示输出3位整型数, 不够3位右对齐。

 ②%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6, 小数点占一位, 不够9位右对齐。

 ③%8s 表示输出8个字符的字符串, 不够8个字符右对齐。

 ④如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。

 ⑤浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;

 ⑥小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。

 ⑦若想在输出值前加一些0, 就应在场宽项前加个0。

   例如: %04d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽度为4位。

  ⑧如果用浮点数表示字符或整型量的输出格式, 小数点后的数字代表最大宽度, 小数点前的数字代表最小宽度。

   例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9, 则第9个字符以后的内容将被删除。


(2). 可以在"%"和字母之间加小写字母l, 表示输出的是长型数。

   ①例如: %ld 表示输出long整数

   ②%lf 表示输出double浮点数


(3). 可以控制输出左对齐或右对齐, 即在"%"和字母之间加入一个"-" 号可说明输出为左对齐, 否则为右对齐。

  ①例如: %-7d 表示输出7位整数左对齐

  ②%-10s 表示输出10个字符左对齐


(4). 一些特殊规定字符

    ①/n 换行
  ②/f 清屏并换页
  ③/r 回车
  ④/t Tab符
  ⑤/xhh 表示一个ASCII码用16进表示,
  ⑥其中hh是1到2个16进制数

6. printf() : examples

例1: various examples

复制代码 代码如下:

立即学习“PHP免费学习笔记(深入)”;

点击下载“修复打印机驱动工具”;


$n =  43951789; 
$u = -43951789; 
$c = 65; // ASCII 65 is ''A'' 

// notice the double %%, this prints a literal ''%'' character 
printf("%%b = ''%b''/n", $n); // binary representation 
printf("%%c = ''%c''/n", $c); // print the ascii character, same as chr() function 
printf("%%d = ''%d''/n", $n); // standard integer representation 
printf("%%e = ''%e''/n", $n); // scientific notation 
printf("%%u = ''%u''/n", $n); // unsigned integer representation of a positive integer 
printf("%%u = ''%u''/n", $u); // unsigned integer representation of a negative integer 
printf("%%f = ''%f''/n", $n); // floating point representation 
printf("%%o = ''%o''/n", $n); // octal representation 
printf("%%s = ''%s''/n", $n); // string representation 
printf("%%x = ''%x''/n", $n); // hexadecimal representation (lower-case) 
printf("%%X = ''%X''/n", $n); // hexadecimal representation (upper-case) 

printf("%%+d = ''%+d''/n", $n); // sign specifier on a positive integer 
printf("%%+d = ''%+d''/n", $u); // sign specifier on a negative integer 
?>  

 

The printout of this program would be:  
%b = ''10100111101010011010101101'' 
%c = ''A'' 
%d = ''43951789'' 
%e = ''4.39518e+7'' 
%u = ''43951789'' 
%u = ''4251015507'' 
%f = ''43951789.000000'' 
%o = ''247523255'' 
%s = ''43951789'' 
%x = ''29ea6ad'' 
%X = ''29EA6AD'' 
%+d = ''+43951789'' 
%+d = ''-43951789''


例2: string specifiers

复制代码 代码如下:

立即学习“PHP免费学习笔记(深入)”;

点击下载“修复打印机驱动工具”;


$s = ''monkey''; 
$t = ''many monkeys''; 

printf("[%s]/n",      $s); // standard string output 
printf("[%10s]/n",    $s); // right-justification with spaces 
printf("[%-10s]/n",   $s); // left-justification with spaces 
printf("[%010s]/n",   $s); // zero-padding works on strings too 
printf("[%''#10s]/n",  $s); // use the custom padding character ''#'' 
printf("[%10.10s]/n", $t); // left-justification but with a cutoff of 10 characters 
?>  

The printout of this program would be:  
[monkey] 
[    monkey] 
[monkey    ] 
[0000monkey] 
[####monkey] 
[many monke]


例3:zero-padded integers

复制代码 代码如下:

立即学习“PHP免费学习笔记(深入)”;

点击下载“修复打印机驱动工具”;


$isodate = sprintf("%04d-%02d-%02d", $year, $month, $day); 
?> 


例4:formatting currency

复制代码 代码如下:

立即学习“PHP免费学习笔记(深入)”;

点击下载“修复打印机驱动工具”;

关于PHP之sprintf函数用法详解php sprintf函数的用法的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于c程序printf函数用法是什么、matlab中fprintf函数的用法详解、PHP echo, print, printf, sprintf函数的区别和使用、PHP echo,print,printf,sprintf函数之间的区别与用法详解的相关知识,请在本站寻找。

本文标签:

上一篇php5.3提示Function ereg() is deprecated Error问题解决方法(php disable function)

下一篇PHP利用func_get_args和func_num_args函数实现函数重载实例(php func_get_args)