implode
(PHP 4, PHP 5, PHP 7)
implode — Join array elements with a string
implode — 将一个一维数组的值转化为字符串
Description
string implode ( string $glue , array $pieces )
string implode ( array $pieces )
//Join array elements with a glue string.
//用 glue 将一维数组的值连接为一个字符串。
Note:
implode() can, for historical reasons, accept its parameters in either order. For consistency with explode(), however, it may be less confusing to use the documented order of arguments.
因为历史原因,implode() 可以接收两种参数顺序,但是 explode() 不行。不过按文档中的顺序可以避免混淆。
Parameters
glue
Defaults to an empty string.
默认为空的字符串。
pieces
The array of strings to implode.
你想要转换的数组。
Return Values
Returns a string containing a string representation of all the array elements in the same order, with the glue string between each element.
返回一个字符串,其内容为由 glue 分割开的数组的值。
Examples
/**
* Created by PhpStorm.
* User: zhangrongxiang
* Date: 2018/2/17
* Time: 下午10:52
*/
$array = array( '`lastname`', '`email`', '`phone`' );
$comma_separated = implode( ",", $array );
//`lastname`,`email`,`phone`
echo $comma_separated . PHP_EOL;
// Empty string when using an empty array:
echo '-------------------------' . PHP_EOL;
print_r( implode( 'hello', array() ) ); // string(0) ""
echo '-------------------------' . PHP_EOL;
$id_nums = array( 1, 6, 12, 18, 24 );
$id_nums = implode( ", ", $id_nums );
$sqlquery = "Select `name`,email,phone from `usertable` where user_id IN ($id_nums)";
//Select `name`,email,phone from `usertable` where user_id IN (1, 6, 12, 18, 24)
echo $sqlquery . PHP_EOL;
$sqlquery = "Select $comma_separated from `usertable` where user_id IN ($id_nums)";
//Select `lastname`,`email`,`phone` from `usertable` where user_id IN (1, 6, 12, 18, 24)
echo $sqlquery . PHP_EOL;
$ar = array( "hello", null, "world" );
echo implode( ',', $ar ) . PHP_EOL; // hello,,world
$picnames = array( "pic1.jpg", "pic2.jpg", "pic3.jpg", "pic4.jpg", "pic5.jpg", "pic6.jpg", "pic7.jpg" );
$allpics = implode( "|", array_slice( $picnames, 0, 5 ) );
//pic1.jpg|pic2.jpg|pic3.jpg|pic4.jpg|pic5.jpg
echo $allpics . PHP_EOL;
$test = implode( [ "one", 2, 3, "four", 5.67 ] );
echo $test . PHP_EOL;//one23four5.67
/
class Foo {
protected $title;
public function __construct( $title ) {
$this->title = $title;
}
public function __toString() {
return $this->title;
}
}
$array = [
new Foo( 'foo' ),
new Foo( 'bar' ),
new Foo( 'qux' )
];
//foo; bar; qux
echo implode( '; ', $array );
See
All rights reserved