11、crc32() 函数计算一个字符串的 crc32 多项式。生成 string 参数的 32 位循环冗余校验码多项式。该函数可用于验证数据的完整性。

语法:crc32(string)

注意:由于 PHP 的整数是带符号的,许多 crc32 校验码将返回负整数,因此您需要使用 sprintf() 或 printf() 的 "%u" 格式符来获取表示无符号 crc32 校验码的字符串。

例子 1

在本例中,我们将在使用以及不使用 "%u" 格式符的情况下,输出 crc32() 的结果(注意结果是相同的):

<?php
$str = crc32("Hello world!");
echo 'Without %u: '.$str."<br />";
echo 'With %u: ';
printf("%u",$str);
?>

输出:

Without %u: 461707669
With %u: 461707669
例子 2

在本例中,我们将在使用以及不使用 "%u" 格式符的情况下,输出 crc32() 的结果(注意结果是不相同的):

<?php
$str = crc32("Hello world.");
echo 'Without %u: '.$str."<br />";
echo 'With %u: ';
printf("%u",$str);
?>

输出:

Without %u: -1959132156
With %u: 2335835140

12、crypt() 函数返回使用 DES、Blowfish 或 MD5 加密的字符串。在不同的操作系统上,本函数的行为不同,某些操作系统支持一种以上的算法类型。在安装时,PHP 会检查什么算法可用以及使用什么算法。

语法:crypt(str,salt)

salt参数可选。用于增加被编码字符数目的字符串,以使编码更加安全。如果未提供 salt 参数,则每次调用该函数时会随机生成一个。

确切的算法依赖于 salt 参数的格式和长度。

下面是与 crypt() 函数一起使用的一些常量。在安装时,由 PHP 设置这些常量:

  • [CRYPT_SALT_LENGTH]
  • [CRYPT_STD_DES]
  • [CRYPT_EXT_DES]
  • [CRYPT_MD5]
  • [CRYPT_BLOWFISH]

注意:解密算法是没有的,这是一种单向加密方法

在本例中,我们将测试不同的算法:

<?php
if (CRYPT_STD_DES == 1)
{
echo "Standard DES: ".crypt("hello world")."\n&lt;br /&gt;";
}
else
{
echo "Standard DES not supported.\n&lt;br /&gt;";
}if (CRYPT_EXT_DES == 1)
{
echo "Extended DES: ".crypt("hello world")."\n&lt;br /&gt;";
}
else
{
echo "Extended DES not supported.\n&lt;br /&gt;";
}if (CRYPT_MD5 == 1)
{
echo "MD5: ".crypt("hello world")."\n&lt;br /&gt;";
}
else
{
echo "MD5 not supported.\n&lt;br /&gt;";
}if (CRYPT_BLOWFISH == 1)
{
echo "Blowfish: ".crypt("hello world");
}
else
{
echo "Blowfish DES not supported.";
}
?>

输出类似(依赖于操作系统):

Standard DES: $1$r35.Y52.$iyiFuvM.zFGsscpU0aZ4e.
Extended DES not supported.
MD5: $1$BN1.0I2.$8oBI/4mufxK6Tq89M12mk/
Blowfish DES not supported.
13、explode() 函数把字符串分割为数组。
语法:explode(separator,string,limit)
说明:本函数返回由字符串组成的数组,其中的每个元素都是由 separator 作为边界点分割出来的子字符串。
separator 参数不能是空字符串。如果 separator 为空字符串(""),explode() 将返回 FALSE。
如果 separator 所包含的值在string 中找不到,那么 explode() 将返回包含 string 中单个元素的数组。如果设置了 limit 参数,
则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。如果 limit 参数是负数,则返回除了最后的 -limit 个元素外的所有元素。
此特性是 PHP 5.1.0 中新增的。
注意:参数 limit 是在 PHP 4.0.1 中加入的。由于历史原因,虽然 implode() 可以接收两种参数顺序,但是 explode() 不行。
你必须保证 separator 参数在 string 参数之前才行。

例子:在本例中,我们将把字符串分割为数组:

<?php
$str = "Hello world. It's a beautiful day.";
print_r (explode(" ",$str));
?>

输出:

Array
(
[0] => Hello
[1] => world.
[2] => It's
[3] => a
[4] => beautiful
[5] => day.
)
 
14、fprintf() 函数把格式化的字符串写到指定的输出流(例如:文件或数据库)。

该函数返回被写字符串的长度。

语法
fprintf(stream,format,arg1,arg2,arg++)

stream——可选。规定在哪里写/输出字符串。

format——必需。转换格式。

arg1——必需。规定插到 format 字符串中第一个 % 符号处的参数。

arg2——可选。规定插到 format 字符串中第二个 % 符号处的参数。

arg++——可选。规定插到 format 字符串中第三、四等等 % 符号处的参数。

说明:参数 format 是转换的格式,以百分比符号 ("%") 开始到转换字符结束。下面的可能的 format 值:
  • %% - 返回百分比符号
  • %b - 二进制数
  • %c - 依照 ASCII 值的字符
  • %d - 带符号十进制数
  • %e - 可续计数法(比如 1.5e+3)
  • %u - 无符号十进制数
  • %f - 浮点数(local settings aware)
  • %F - 浮点数(not local settings aware)
  • %o - 八进制数
  • %s - 字符串
  • %x - 十六进制数(小写字母)
  • %X - 十六进制数(大写字母)

arg1, arg2, ++ 等参数将插入到主字符串中的百分号 (%) 符号处。该函数是逐步执行的。在第一个 % 符号中,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。

提示和注释

注释:如果 % 符号多于 arg 参数,则您必须使用占位符。占位符被插入 % 符号之后,由数字和 "\$" 组成。请参见例子 3。

提示: 相关函数: printf()、 sprintf()、 vfprintf()、 vprintf() 以及 vsprintf()。

例子

例子 1
<?php
$str = "Hello";
$number = 123;
$file = fopen("test.txt","w");
echo fprintf($file,"%s world. Day number %u",$str,$number);
?>

输出:

27

以下文本将写入 "test.txt":

Hello world. Day number 123
例子 2
<?php
$number = 123;
$file = fopen("test.txt","w");
fprintf($file,"%f",$number);
?>

输出:

123.000000
例子 3

使用占位符:

<?php
$number = 123;
$file = fopen("test.txt","w");
fprintf($file,"With 2 decimals: %1\$.2f\nWith no decimals: %1\$u",$number);
?>

以下文本将写入 "test.txt":

With 2 decimals: 123.00
With no decimals: 123

15、hebrev() 函数把希伯来文本从右至左的流转换为左至右的流。只有 224 至 251 之间的 ASCII 字符,以及标点符号受到影响。

语法:hebrev(string,maxcharline)

maxcharline——规定每行的最大字符数。如果可能,hebrev() 将避免把单词断开。

说明:hebrev() 和 hebrevc() 可以把希伯来逻辑文本转换为希伯来可见文本。希伯来可见文本不需要特殊的右至左字符支持,这使它对于在 web 上显示希伯来文本很有用处。

 

转载于:https://www.cnblogs.com/quincy-qiu/p/4015593.html

PHP学习系列(1)——字符串处理函数(3)相关推荐

  1. python内置函数表_python学习系列--python内置函数(一)

    先列出所有的python内置函数,可以看到还是挺多的. abs()        求给定数的绝对值. all()          传入一个列表,只有当列表中所有元素都是真时,该函数返回真. any( ...

  2. Linux基础学习系列:对于fork()函数的学习,及进程创建相关知识

    fork()函数 :由当前进程再生成一个进程出来 #include <sys/types.h> #include <unistdh> pid_t fork(void); 返回: ...

  3. Baostock学习系列2:批量下载股市日交易明细

    目录 背景 批量下载股市交易明细 流程拆解 代码实现 日期循环 time_offset_cal()自定义函数 判断输入日期是否交易日 check_is_trading_day() 下载对应日期的交易明 ...

  4. Python: 学习系列之七:模块、PIPY及Anaconda

    系列 Python: 学习系列之一:Python能做什么 Python: 学习系列之二:基础介绍(int/float/string/range/list/tuple/dict/set) Python: ...

  5. 小猿圈学习Python字符串操作--字符串分割函数

    对于长字符串,我们一般要怎么处理呢?除了切片,但是切片太麻烦了.python为我们提供了字符串切割函数,它不仅可以通过指定字符切割,也可以去除空格符哦.下面就看一下小猿圈Python讲师是怎么介绍Py ...

  6. C语言再学习25——常用字符串函数归纳

    前言: 为了方便查看博客,特意申请了一个公众号,附上二维码,有兴趣的朋友可以关注,和我一起讨论学习,一起享受技术,一起成长. 1. memcpy 内存复制函数. 1.1 头文件 #include &l ...

  7. 【单片机学习笔记】(6):字符串处理函数、变量的三种情况、用函数实现模块化程序设计、晶振与延时、指针

    / 字符串处理函数 / stract函数   字符串连接函数 例:printf("%s", stract(str1, str2)): strcpy(字符串或字符数组名)和strnc ...

  8. CodeMonkey过关学习笔记系列:71-85关 函数

    CodeMonkey过关学习笔记系列:71-75关 •"函数"农场 (FUNCTION FARM) 71 ~ 85 第 71 关挑战 "函数"农场step di ...

  9. PHP学习记录(字符串函数)

    字符串常用函数 获取字符串长度函数 /* * strlen函数 * int strlen($var) * 获取字符串或数字的长度 */ $a = 'hello, woRld'; $b = '王昭'; ...

  10. C语言学习笔记---字符串拼接函数 strcat() 和 strncat()

    strcat()函数    strcat()函数主要用来拼接字符串,用于将一个字符串拼接到另一个字符串的后面.下面通过一个简单的例子来演示一下这个函数的使用方法. int main() {char s ...

最新文章

  1. CXF做的webservice简单例子
  2. WIN7系统开题提示loli.vbs 操作超时怎么办
  3. Yii2的深入学习--yii\base\Object 类
  4. Dom4j操作XML
  5. 英伟达最大gpu_英伟达正式发布Ampere架构GPU,完成史上最大性能飞跃
  6. lora近几年发展的具体介绍
  7. 简明Linux命令行笔记:finger
  8. 物维管理、楼控系统、安防系统、巡检管理、电子巡更、门禁管理、变配电、给排水、防盗报警、消防报警、电梯监视、智能楼宇、物业管理、报修管理、维保管理、工单管理、物料管理、审批、租赁管理、楼宇管理、房产管理
  9. Luogu1456 Monkey King
  10. 【python】用PyQt5教你制作简单的水果抽奖机
  11. 极客星球 | Unity3D插件模板化探索
  12. 计算机路由器上网配置,电脑如何设置路由器上网?
  13. bd青鸟Java宠物商店2017
  14. vlookup函数和vlookup函数与数据有效性
  15. MySQL单表查询总结
  16. windows平台下的oracle ORA-01031的解决方法
  17. 动态规划问题(凑硬币)理解总结
  18. 英语作文写作常用句型
  19. Python中的pass的作用
  20. 关于 四舍六入五成双/四舍六入五留双/四舍六入五单双 等口诀的实例研究

热门文章

  1. 在应用了皮肤的程序中制作透明的文本编辑控件(如:TcxMemo)
  2. C++调用web服务(java事例供参考)
  3. 微服务认证模式_微服务之“网关模式”
  4. python界面不同按钮实现不同功能-三、PyQt5不同方法创建菜单栏、工具栏和状态栏...
  5. python综合程序设计-Python程序设计实验五:综合运用三种基本结构进行程序设计...
  6. python在线课程价格-杭州python课程价格
  7. python3语法错误-【Python3之异常处理】
  8. 精通python能干嘛-一个程序员怎样才算精通Python?
  9. python编译器在哪下载-Python-IDLE的下载安装及使用
  10. python项目归纳总结-python项目总结