PHP 数组转字符串,与字符串转数组
数组转字符串:
implode('!', $arr);//将一维数组以!分隔组合成一个字符串,参数一可以为""
字符串转数组:
explode('!', $str);//将字符串以!分割为一个一维数组,参数一不可以为""
str_split($str, 3);//将字符串分割成数组,参数二将字符串从左向右每3个字符分割一次,最后的不够3个了 有几个算几个。
1
|
implode 使用一个字符串将数组变成字符串
|
1
2
3
4
5
6
7
8
9
10
11
|
<br><?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 — 使用一个字符串分割另一个字符串,返回一个数组
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<?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 — 将字符串转换为数组
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
|
<?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
)
|
如果不兼容的话,就只有考虑别的方法了,将字符串逐位进行打断,
这里有一个将字符串进行打断的手动的方法,是原来为了写日语半角的假名验证的一个方法
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
|
这里是一串对半角的假名的枚举
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 ;
}
|
没有规律的数组转化为字符串
1
2
3
4
5
6
7
8
9
10
|
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 数组转字符串,与字符串转数组相关推荐
- Go 学习笔记(9)— 循环(for、for range访问数组、切片、字符串和通道、goto、continue、break)
1. for 循环格式 Go 语言仅支持一种循环语句即 for 循环,它有 3 种形式,只有其中的一种使用分号. 和 C 语言的 for 一样 for init; condition; post { ...
- php字符串数组访问,php – 按字符串键x访问数组,其中x是“123”
我们有一个数组,其中键是字符串,但这些字符串有时只是数字(例如"123").当尝试通过键"123"访问数组时,我们得到一个未定义的索引通知.当仅通过整数123访 ...
- C# 中字符串string和字节数组byte[]的转换,16 进制字符串转 int的方法
string和byte[]互转 string转byte[] byte[] byteArray = System.Text.Encoding.Default.GetBytes(str); byte[] ...
- 如何把一段逗号分割的字符串转换成一个数组?
String.split() StringTokenizer类 package com.study.JavaBase;import org.junit.Test;import java.util.Ar ...
- C# 指定格式的字符串截成一维数组(二维数组)的操作类
指定格式的字符串截成一维数组(二维数组)的操作类 做项目时经常会遇到将"1,3,a,b,d"截成一维数组或将"1,a;2,b;3,c;4,d"截成二维数组.虽然 ...
- php数组转字符串 join,jQuery中将数组转换成字符串join()和push()使用
1.push()将元素依次添加至数组: 2.join()将数组转换成字符串,里面可以带参数分隔符,默认[,] $(document).on('click','.sure',function(){ va ...
- java字符串,包,数组及空心正方形,菱形的实例
一.数组:相同类型的多个对像 引用类型:所有的类,接口,数组, int[] ints(变量名) = new int[3] new:指的是在内存空间重新开辟一块区域 String s1 = " ...
- 如何在JavaScript / jQuery中查找数组是否包含特定字符串? [重复]
本文翻译自:How to find if an array contains a specific string in JavaScript/jQuery? [duplicate] This ques ...
- c语言用一维数组求字符串,c语言一维数组练习题.doc
c语言一维数组练习题 精品文档2016全新精品资料-全新公文范文-全程指导写作 –独家原创 PAGE1 / NUMPAGES1 c语言一维数组练习题 4.1内容概述 本章主要介绍了数值数组和字符数组的 ...
- 字符串对象转数组对象_js对象转数组的方法 js怎么将数组对象转变成字符串
只需要一句,arr.__proto__=[];但是要注意浏览器支持__proto__才行,最新的浏览器应该都支持. 以下两种都可以解决此问题: function transform(obj){ var ...
最新文章
- 集合list set Map问题
- ubuntu下使用串口调试终端minicom链接typec接口
- LLVM笔记(1) - TableGen
- 【荐】如何规划 Nginx 网站目录的权限(用户,用户组,ssh,sftp)
- 计算机网络多线程通信,多线程技术的PLC与PC的通讯方式
- iOS应用代码注入防护
- C#中使用键值对存取值并使用Linq通过key获取value
- hibernate管理实体的三个状态
- 一键洞悉员工级人效!智邦国际集团业财一体化管理系统:业财一心,基业长青
- matlab绘3d图
- 柏林纪行(中):Node.js Collaboration Summit
- [转帖]看完这篇文章你还敢说你懂JVM吗?
- 关于程序、进程和线程
- 跨界造智能机器人,娃哈哈能“喝”出新辉煌吗
- PulseAudio VS AudioFlinger(七)
- 外星人电脑为什么那么贵_为什么系统门窗那么贵?
- SQlite数据库的C编程接口(一) 简介 ——《Using SQlite》读书笔记
- U盘的针脚板竟然掉了
- 偏相关分析在python上的实现(支持栅格数据)
- php ffmpeg扩展下载