PHP 数组转字符串,与字符串转数组
implode 使用一个字符串将数组变成字符串
<?php $array = array('lastname', 'email', 'phone');
$comma_separated = implode(",", $array); echo $comma_separated; // lastname,email,phone // Empty string when using an empty array:
var_dump(implode('hello', array())); // string(0) "" ?>
explode — 使用一个字符串分割另一个字符串,返回一个数组
<?php
// 示例 1
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2 // 示例 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // * ?>
这里如果字符串没有任何符号可以进行分割的话,就需要考虑别的方法了
str_split — 将字符串转换为数组
<?php $str = "Hello Friend"; $arr1 = str_split($str);
$arr2 = str_split($str, 3); print_r($arr1);
print_r($arr2); ?>
输出结果
Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
[5] =>
[6] => F
[7] => r
[8] => i
[9] => e
[10] => n
[11] => d
) Array
(
[0] => Hel
[1] => lo
[2] => Fri
[3] => end
)
如果不兼容的话,就只有考虑别的方法了,将字符串逐位进行打断,
这里有一个将字符串进行打断的手动的方法,是原来为了写日语半角的假名验证的一个方法
这里是一串对半角的假名的枚举
function kana_Perl($katakana){ $katakana_array = array(
1=>"ア",2=>"イ",3=>"ウ",4=>"エ",5=>"オ", 6=>"カ",7=>"キ",8=>"ク",9=>"ケ",10=>"コ", 11=>"サ",12=>"シ",13=>"ス",14=>"セ",15=>"ソ", 16=>"タ",17=>"チ",18=>"ツ",19=>"テ",20=>"ト", 21=>"ナ",22=>"ニ",23=>"ヌ",24=>"ネ",25=>"ノ", 26=>"ハ",27=>"ヒ",28=>"フ",29=>"ヘ",30=>"ホ", 31=>"マ",32=>"ミ",33=>"ム",34=>"メ",35=>"モ", 36=>"ヤ",37=>"ユ",38=>"ヨ", 39=>"ラ",40=>"リ",41=>"ル",42=>"レ",43=>"ロ", 44=>"ワ",45=>"ヲ",46=>"ン", 47=>"ァ",48=>"ィ",49=>"ゥ",50=>"ェ",51=>"ォ", 52=>"ャ",53=>"ュ",54=>"ョ",55=>"ッ",56=>"、", 57=>"。",58=>"ー",59=>"゙",60=>"゚"
); $check_result = array_search($katakana,$katakana_array); return $check_result; } 这是一段匹配的法则,注意这里是i +=2,因为一个文字占2位
function substr_cut($katakana){
$i_end = 2;
$check_sucess = "";
for($i_start=0; $i_start < strlen($katakana); $i_start=$i_start+2){ $str_cut = substr($katakana,$i_start,$i_end);
echo '$str_cut='.$str_cut.'<br>';
$check_sucess = kana_Perl($str_cut);
if(!$check_sucess){
break;
} }
return $check_sucess;
}
没有规律的数组转化为字符串
function substr_cut($katakana){
$i_end = 1; //打断位数长度,分清楚英文和中文
$check_sucess = array();
for($i_start=0; $i_start < strlen($katakana); $i_start=$i_start+1){
$str_cut = substr($katakana,$i_start,$i_end);
$check_sucess[$i_start] = $str_cut;
echo '$str_cut='.$str_cut.'<br>';
}
return $check_sucess;
}
PHP 数组转字符串,与字符串转数组的更多相关文章
- 使用NSJSONSerialization将数组或字典转为字符串
IOS中将数组或字典转为字符串可以用NSJSONSerialization,代码如下: NSData* data = [NSJSONSerialization dataWithJSONObject:a ...
- JS数组转成json字符串的注意事项
在js中常常会将一个数组转成json字符串发送给后端. 这时候在定义数组数据结构的时候需要格外注意,意味json中是有集合和对象的区别的. 集合的定义是[];对象的的定义是{}. 这时候,在创建数组时 ...
- PHP implode() 函数 把数组元素组合为字符串
http://www.w3school.com.cn/php/func_string_implode.asp PHP implode() 函数 PHP String 函数 实例 把数组元素组合为字符串 ...
- C#中如何排除/过滤/清空/删除掉字符串数组中的空字符串
C#中要如何才能删除一个字符串数组中的空字符串呢?随着微软对C#不断发展和更新,C#中对于数组操作的方式也变得越来越多样化.以往要实现过滤数组中的空字符串,都是需要实行循环的方式来排除和过滤.C#3. ...
- JSon_零基础_007_将JSon格式的"数组"字符串转换为Java对象"数组"
将JSon格式的"数组"字符串转换为Java对象"数组". 应用此技术从一个json对象字符串格式中得到一个java对应的对象. JSONObject是一个“n ...
- JSon_零基础_001_将布尔类型数组转换为JSon格式字符串,返回给界面
将布尔类型数组转换为JSon格式字符串,返回给界面 需要导入包: 编写bean: package com.west.webcourse.po; /** * 第01步:编写bean类, * 下一步com ...
- C语言中的数组和指针以及字符串
数组名同时也是该数组首元素的地址,而指针提供了一种用来使用地址的符号方法,因此指针能够很有效地处理数组. 将一个整数加给指针,这个整数会和指针所指类型的字节数相乘,然后所得的结果会加到初始地址上 da ...
- Java将一段逗号分割的字符串转换成一个数组
String 类:String 类代表字符串.Java 程序中的所有字符串字面值都作为此类的实例实现.字符串是常量,它们的值在创建之后不能更改.字符串缓冲区支持可变的字符串.因为 String 对象是 ...
- 固定分隔符字符串与数组互转及ArrayList与数组(Array)互转
1.字符串转数组 这个相信多数人都会常用,string.split方法,分隔符可以为多个.详细信息参见MSDN string[] actionCfgs = _para.Split(new char[] ...
- 十六进制字符串转化为byte数组
工作上有这样的需求之前找了好多都不行,好不容易有个可以的赶紧留下来. 原址:http://blog.163.com/roadwalker@126/blog/static/113561841201013 ...
随机推荐
- 机器学习10大经典算法.doc
详见 F:\工程硕士\d电子书\26 数据挖掘 小结: 1. C4.5 C4.5算法是机器学习算法中的一种分类决策树算法,其核心算法是ID3算法. C4.5算法继承了ID3算法的优点,并在以下几方面 ...
- bzoj2705
一个常用的结论(方法) 只要知道gcd(i,n)=L 的i的个数s,我们就能很轻易得出答案 gcd(i,n)=L gcd(i/L,n/L)=1 不难得到这样的s=与n/L互质的个数=phi(n/L) ...
- PySpark关于HDFS文件(目录)输入、数据格式的探讨
背景 平台HDFS数据存储规则是按照“数据集/天目录/小时目录/若干文件”进行的,其中数据集是依据产品线或业务划分的. 用户分析数据时,可能需要处理以下五个场景: (一)分析指定数据集.指 ...
- centos 6.4 大容量磁盘分区步骤
首先安装分区工具 yum install parted 假设需要分区的设备为/dev/sdb 运行如下命令 parted /dev/sdb (parted) mklabel gpt #大于2TB的磁盘 ...
- (转载)设计模式学习笔记(十一)——Facade外观模式
(转载)http://www.cnblogs.com/kid-li/archive/2006/07/10/446904.html Facade外观模式,是一种结构型模式,它主要解决的问题是:组件的客户 ...
- Jquery UI dialog 详解 (中文)
转载▼ 1 属性 1.11 autoOpen ,这个属性为true的时候dialog被调用的时候自动打开dialog窗口.当属性为false的时候,一开始隐藏窗口,知道.dialog("op ...
- List<T>的IndexOf方法和Remove方法
Microsoft地址 List<T>的IndexOf()方法 如果T是值类型的,就按照比较值的方法从列表的第一个元素开始逐个匹配,如果T是引用类型,就比较引用是否相同 举例如下: cla ...
- Cookie及Session文件在本机的存放位置
1. Cookie的存放位置 D:\Users\xlxiao\AppData\Roaming\Microsoft\Windows\Cookies 2. Session的存放位置(目前未解决)
- 对 Linux 初级、中级、高级用户非常有用的 60 个命令
对 Linux 初级.中级.高级用户非常有用的 60 个命令 初级篇: 你打算从Windows换到Linux上来,还是你刚好换到Linux上来?哎哟!!!我说什么呢,是什么原因你就出现在我的世界里了. ...
- EF中使用存储过程
1.存储过程使用out参数返回结果 存储过程: create or replace procedure PROC_GETSEQ(tbname varchar,ReturnNum out number) ...