PHP5薄荷教程[17]字符串操作函数(1)

  PHP5中的字符串操作函数种类繁多,功能齐全,以下就让我们来分门别类地学习一下。
一、输出
1、void echo(string arg1 [,string ...])
  输出所有变量,括号可以省略。
2、int print(string arg)
  输出arg的值,总是返回1,括号可以省略。
3、int printf(string format [,mixed args [, mixed ...]])
  按照format指定的格式输出所有变量,返回输出字符串的长度。以下是format的使用说明,其后是一些实例。
1)正负限定符用来指定强制显示数据的符号。
2)填充限定符用来指定填充时用什么符号。该符号可以是空格或0,空格为缺省值。如果要指定别的填充符号,则需要用单引号(')来说明。
3)对齐限定符用来指定输出时是左对齐还是右对齐。
4)宽度限定符用来指定输出时起码的宽度。
5)精度限定符用来指定输出浮点数时要显示多少位小数。如果被用在字符串上,则限定最大长度。
6)类型限定符用来指定以什么类型来输出数据,
% 该符号是类型限定符的启始符,如果要显示%,则需要用两个%。
b 变量被看作整数处理,输出其二进制的形式。
c 变量被看作整数处理,输出其对应的ASCII字符。
d 变量被看作整数处理,输出其带符号的十进制形式。
e 变量被看作用科学计数法表示的数字。如1.2e+2
u 变量被看作整数处理,输出其不带符号的十进制形式。
f 变量被看作浮点数处理。
o 变量被看作整数处理,输出其八进制的形式。
s 变量被看作字符串处理。
x 变量被看作整数处理,输出其十六进制的形式。(小写)
X 变量被看作整数处理,输出其十六进制的形式。(大写)
7)变量交错
  一般地,该函数按照提供的参数的顺序来输出,如果想要改变顺序则需要使用变量交错限定符。如:
printf("The %2$s contains %1$d monkeys", $num, $location);
  同样地,参数可以被重复使用。如:
printf('The %2$s contains %1$d monkeys.
That/'s a nice %2$s full of %1$d monkeys.', $num, $location);

  以下是一些实例,以供参考。
1)输出数据
<?php
$n =  43951789;
$u = -43951789;
$c = 65; // ASCII 65 is 'A'

printf("%%b = '%b'/n", $n);
printf("%%c = '%c'/n", $c);
printf("%%d = '%d'/n", $n);
printf("%%e = '%e'/n", $n);
printf("%%u = '%u'/n", $n);
printf("%%u = '%u'/n", $u);
printf("%%f = '%f'/n", $n);
printf("%%o = '%o'/n", $n);
printf("%%s = '%s'/n", $n);
printf("%%x = '%x'/n", $n);
printf("%%X = '%X'/n", $n);
printf("%%+d = '%+d'/n", $n);
printf("%%+d = '%+d'/n", $u);
?>
输出:
%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)输出字符串

<?php
$s = 'monkey';
$t = 'many monkeys';

printf("[%s]/n",      $s); //基本字符串输出
printf("[%10s]/n",    $s); //右对齐(+号省略)
printf("[%-10s]/n",   $s); //左对齐(用空格填充)
printf("[%010s]/n",   $s); //限定宽度(用0填充)
printf("[%'#10s]/n",  $s); //用自定义填充符'#'
printf("[%10.10s]/n", $t); //左对齐并限定长度为10
?>
输出:
[monkey]
[    monkey]
[monkey    ]
[0000monkey]
[####monkey]
[many monke]

3)用0对整数填充
<?php
$isodate = sprintf("%04d-%02d-%02d", $year, $month, $day);
?> 
 
4)格式化货币
<?php
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
//$money="123.1";
$formatted = sprintf("%01.2f", $money);
//输出"123.10"
?> 
 
5)科学计数法
<?php
$number = 362525200;
echo sprintf("%.3e", $number); //输出3.63e+8
?> 

4、string sprintf(string format [,mixed args [,mixed ...]])
  同printf(),唯一的区别是将输出内容返回到一个字符串中。
5、int vprintf(string format, array args)
  对数组args中的每个元素进行格式化。返回输出字符串的长度。
6、string vsprintf(string format, array args)
  同vprintf(),区别是将输出内容返回到一个字符串中。
7、mixed sscanf(string str, string format)
  按照格式format读取字符串中的数据,并以数组的形式返回。

二、组合和分割
1、string implode(string glue, array pieces)
  或string join(string glue, array pieces)
  将数组pieces中的数据用glue连接,并返回连接后的字符串。如implode(".",array(1,2,3))返回"1.2.3"。
2、array explode ( string separator, string string [, int limit] )
  以separator为分隔符,将string分割成若干个元素并返回改数组合。limit指定最多分割为多少块,最后一个元素包含剩余字符串。
<?php
$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
?>
3、array str_split ( string string [, int split_length] )
  按split_length指定的长度将string分割开来并返回数组。如果split_length没有指定,则默认为1。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值