码迷,mamicode.com
首页 > 编程语言 > 详细

PHP 数组转字符串,与字符串转数组

时间:2020-05-03 20:36:53      阅读:71      评论:0      收藏:0      [点我收藏+]

标签:字符串分割   last   ted   示例   mail   lsp   lis   另一个   plain   

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 数组转字符串,与字符串转数组

标签:字符串分割   last   ted   示例   mail   lsp   lis   另一个   plain   

原文地址:https://www.cnblogs.com/vwvwvwgwg/p/12822927.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!