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 ...
随机推荐
- 【HDOJ】1031 Design T-Shirt
qsort直接排序. #include <stdio.h> #include <string.h> #include <stdlib.h> #define MAXN ...
- [转]CharacterController与Rigidbody
From: http://blog.csdn.net/czlilove/article/details/9139103 今天下午碰到个问题纠结了很久:人物加上了Rigidbody并使用了重力,遇到悬崖 ...
- 动态规划(DP计数):HDU 5116 Everlasting L
Matt loves letter L.A point set P is (a, b)-L if and only if there exists x, y satisfying:P = {(x, y ...
- Delta-wave
Delta-wave Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- EXT 组件一些属性与方法(Tree)
1.Ext.tree.TreePanel 主要配置项: root:树的根节点. rootVisible:是否显示根节点,默认为true. useArrows:是否在树中使用Vista样式箭头,默认为f ...
- Android学习笔记(十四)方便实用的首选项-PreferenceActivity
突然发现已经好多天没更新博客了,最近公司项目正在进行一个大跨度的重构,又碰上有新需求,一连好多天都是很晚才到家.其实这篇博文在草稿箱里面也存了很久了,本来想着不发了,不过感觉PreferenceAct ...
- 17 Great Machine Learning Libraries
17 Great Machine Learning Libraries 08 October 2013 After wonderful feedback on my previous post on ...
- hdoj 2401 Baskets of Gold Coins
Baskets of Gold Coins Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- HDU 4604 Deque 二分最长上升子序列
题目大意就是给一个deque 然后有n个数,依次进行操作,每种操作,你可以把这个数放在deque首部,也可以放在尾部,也可以扔掉不管,但是要保证deque中的数是非递减的.最要求deque中最长能是多 ...
- Java学习——数据类型【2】
1. 对象与类 对象:类的一个实例,有状态和行为. 类:一个模板,描述一类对象的行状态和行为. 2. 类可以包含的变量 类型 局部变量 成员变量 类变量(静态变量) 定义位置 方法.或语句块中 类中, ...