str_split的用法(PHP学习)
str_split的用法:
先看看PHP手册是怎么说的
array str_split ( string $string [, int $split_length = 1 ] )
str_split返回的是一个数组,第一个参数是string类型表示要分组的字符串,第二个参数是init类型,表示按几个字符来分组,如果没有第二个参数,那么默认按1个字符来分组
来看一个题目,如何把1234567890变成1,234,567,890?
直接上代码:
<?php $str = '1234567890';
//要3个字符一分应该倒过来,这里我们用到了strrev函数
$rev = strrev($str);
echo $rev,'<br />';
//返回0987654321 echo $str,'<br />';
//返回1234567890说明strrev函数不影响原来的字符串 $revArr = str_split($rev);
var_dump($revArr);
/*没有第二个参数的话,默认按1个字符来分组
返回值是:
array (size=10)
0 => string '0' (length=1)
1 => string '9' (length=1)
2 => string '8' (length=1)
3 => string '7' (length=1)
4 => string '6' (length=1)
5 => string '5' (length=1)
6 => string '4' (length=1)
7 => string '3' (length=1)
8 => string '2' (length=1)
9 => string '1' (length=1)
*/ $revArr = str_split($rev,3);
var_dump($revArr);
/*按3个字符长度来分组
返回值
array (size=4)
0 => string '098' (length=3)
1 => string '765' (length=3)
2 => string '432' (length=3)
3 => string '1' (length=1)
*/ //接下来要做的就是把得到的数组转换成字符串
//这里要用到explode和implode函数了
//explode表示把字符串转换成数组
//implode表示把数组转换成字符串 $revStr = implode(',', $revArr);
echo $revStr,'<br />';
//返回值098,765,432,1 //接下来再把这个字符串再倒一下就好了
$revStr=strrev($revStr);
echo $revStr,'<br />';
//返回值1,234,567,890
//OK 搞定 ?>
关于这个1234567890转换成1,234,567,890的另一种做法
<?php $str = '1234567890'; $str = strrev($str);
echo $str,'<br />';
$str = chunk_split($str,3,',');
//chunk_split第一个参数是要进行操作的字符串
//第二个参数是按几个字符来操作
//第三个参数是分隔开的字符以什么来连接
echo $str,'<br />';
//返回098,765,432,1,
$str = strrev($str);
echo $str,'<br />';
//返回,1,234,567,890
$str = trim($str,',');
//trim函数表示对字符串的两端进行修整
//如果没有第二个参数那么表示去掉两端的空格
//第二个参数有的话表示去掉两端的这样的字符
echo $str;
//返回1,234,567,890
//搞定 ?>
str_split的用法(PHP学习)的更多相关文章
- #define中 #与##的神奇用法linux学习 (转)
#define中 #与##的神奇用法linux学习 (转) #define f(a,b) a##b #define d(a) #a #define s(a) d(a) void main( void ...
- c++用法的学习心得
关于C++这门课,是我在大一的时候开始学习的,那时候接触的就是单纯的一些C++的基本语法规则,基本的编程规则.但是我们都有这样的困惑:课堂和教材的 内容基本上都能接受和理解,但真要实际动手编写程序又感 ...
- 以太坊RLP用法-go-ethereum学习
RLP (递归长度前缀)提供了一种适用于任意二进制数据数组的编码,RLP已经成为以太坊中对对象进行序列化的主要编码方式.RLP的唯一目标就是解决结构体的编码问题:对原子数据类型(比如,字符串,整数型, ...
- 关于C++用法的学习心得
通过大一一学期对C++语言的学习,我感觉c++是一门有一定难度并且很有挑战性的科目,在c++学习过程中,我们懂得了其有很多的用法. 引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确. ...
- C++用法的学习心得(要求包含示例,并反映出利用网络获取帮助的过程)
大一一年C++的学习生涯,让我感慨颇多!回想起,当初上课时的情形,一切是那么的清晰,仿佛就像是发生在昨天一样. 任何一门学科的学习都是有技巧的.对于c++,我学的并不好,刚开 ...
- C++用法及学习心得
通过对C++语言的学习,我感觉C++语言是有一定难度却又是非常有趣的科目.也是很有帮助的,对我们未来工作学习而言.我们可以通过C++语言进行更深层次的理解和思考.通过学习我懂得了C++语言是面向对象的 ...
- 关于const用法的学习
被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性.所以很多C++程序设计书籍建议:“Use const whenever you need”.1.const作函数参数 例如 ...
- Android的ToggleButton和Switch以及AnalogColok和DigitalColok的用法-android学习之旅(二十)
ToggleButton 和Switch简介 ToggleButton 和Switch都是继承了Button,所以他们的属性设置和Button差不多. 分别支持的属性 ToggleButton 的属性 ...
- Android的RadioButton和checkBox的用法-android学习之旅(十九)
RadioButton和checkBox简介 单选按钮(RadioButton)和复选框(CheckBox)都继承了Button,因此属性的设置和Button差不多,只是加了一个android:che ...
随机推荐
- PAT1042. Shuffling Machine (20)
#include <iostream> #include <vector> using namespace std; int n; string card[54]={" ...
- javascript打开新页面的方法
方案一: A标签: 这里要注意target的设置,_Blank是指新窗口,也可以用js来模拟创建. <a href="http://www.cnblogs.com" targ ...
- Pandas数据结构
Pandas处理以下三个数据结构 - 系列(Series) 数据帧(DataFrame) 面板(Panel) 这些数据结构构建在Numpy数组之上,这意味着它们很快. 维数和描述 考虑这些数据结构的最 ...
- localhost不能访问127.0.0.1可以访问的原因以及解决办法
今天在调试程序的时候,出现了一个奇怪问题,localhost不能访问但127.0.0.1可以访问? localhost与127.0.0.1的概念和工作原理之不同 要比较两个东西有什么不同,首先要弄清两 ...
- web自动化常用定位和方法总结
一. driver常用方法 二. 常用定位 三. 元素在页面不可见区域 四. iframe的操作 五. 页面弹出框:加等待时间 六. windows弹出框 七. 鼠标操作 八. 下拉列表 注意:下图中 ...
- Android中UI线程与后台线程交互设计的6种方法
在android的设计思想中,为了确保用户顺滑的操作体验.一些耗时的任务不能够在UI线程中运行,像访问网络就属于这类任务.因此我们必须要重新开启 一个后台线程运行这些任务.然而,往往这些任务最终又会直 ...
- jsp的运行内幕--Tomcat容器对自定义标签的解析过程
http://blog.sina.com.cn/s/blog_4adc4b090101daqb.html
- Webpack 热部署检测不到文件变化问题
Webpack 热部署检测不到文件变化问题 今天在用Webpack开发的时候,突然发现文件变动后热部署功能不工作了,感觉好像是webpack检测不到文件的修改了.折腾了半天,开始一直以为是自己的代码有 ...
- Delphi Xe4 游戏开发的技术选型.
asphyre 是支持 FireMonkey的. 利用Firemonkey的跨平台接口.实现 win,mac,ios. 其它方案估计就得靠 FPC 了. 好处是多了输出Andriod的可能. zeng ...
- VS2017 Product Key
Enterprise: NJVYC-BMHX2-G77MM-4XJMR-6Q8QF Professional: KBJFW-NXHK6-W4WJM-CRMQB-G3CDH