IMPLODE&有什么区别加入

时间:2013-07-28 23:22:56

标签: php

IMPLODE&之间有什么区别? JOIN两者的工作原理相同。

<?php
    $array = array(1,2,3);

    echo join(",", $array); //output 1,2,3
    echo implode(",", $array); //output 1,2,3
?>

使用一个在另一个上有什么好处吗?

5 个答案:

答案 0 :(得分:110)

它们是彼此的别名。它们理论上应该完全相同。尽管如此,使用explode / implode已经证明可以将代码的强大程度提高10%

答案 1 :(得分:16)

加入:加入是implode()的别名。

示例:

<?php
$arr = array('Test1', 'Test2', 'Test3');
$str = join(",", $arr);
echo $str; 
?>
  

输出:Test1,Test2,Test3。

Implode :implode从数组元素返回一个字符串。

示例:

<?php
$arr = array('Test1', 'Test2', 'Test3');
$str = implode(",", $arr);
echo $str; 
?>
  

输出:Test1,Test2,Test3。

更新:

我在Benchmark中对它们进行了测试,它们的速度相同。他们之间没有区别。

答案 2 :(得分:7)

join()implode()的别名,因此理论上implode更多&#34; PHP本地&#34}虽然使用它绝对没有性能提升。

另一方面,join()可以在Perl,Python和ECMAScript(包括JavaScript)等其他语言中找到,因此对于更广泛的程序员可理解性更加便携。

因此虽然explodeimplode无疑是更具戏剧性的,但我会投票选择join作为一种更通用的方式来表达数组中每个值到字符串的连接。

答案 3 :(得分:3)

想不出来。一个是另一个的别名。它们都将数组元素组合成一个字符串。

答案 4 :(得分:0)

简而言之,现实是在php中,join()和implode()方法的功能相同。

一个可以互换,因为它们以相同的方式工作。