首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在PHP中将数组的第一个元素转换为字符串

在PHP中将数组的第一个元素转换为字符串
EN

Stack Overflow用户
提问于 2011-06-07 15:54:18
回答 13查看 165.3K关注 0票数 36

我有一个PHP数组,并希望将其转换为字符串。

我知道我可以使用joinimplode,但在我的例子中,数组只有一项。为什么我必须在一个只有一项的数组中使用组合值?

这个数组是我的PHP函数的输出,它返回一个数组:

代码语言:javascript
运行
复制
Array(18 => 'Something');

如何将其转换为字符串?

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2011-06-07 15:58:01

有没有其他方法可以把数组转换成字符串?

如果我没看错的话,你不想把数组转换成字符串,你想得到数组中唯一元素的值。

代码语言:javascript
运行
复制
<?php
  $foo = array( 18 => 'Something' );
  $value = array_shift( $foo );
  echo $value; // 'Something'.

?>

使用array_shift,您不必担心索引。

编辑:请注意,array_shift并不是唯一返回单个值的函数。array_pop( )、current( )、end( )、reset( ),它们都将返回单个元素。所有发布的解决方案都有效。但是使用数组移位,您可以确保只会得到数组的第一个值,即使有多个数组也是如此。

票数 39
EN

Stack Overflow用户

发布于 2011-06-07 16:15:50

有没有其他方法可以把数组转换成字符串?

是的有。serialize()。它可以将各种数据类型(包括对象和数组)转换为字符串表示形式,您可以在以后使用unserialize()。序列化Array(18 => 'Somthing')之类的关联数组将同时保留键和值:

代码语言:javascript
运行
复制
<?php
$a = array(18 => 'Something');
echo serialize($a);                                   // a:1:{i:18;s:9:"Something";}
var_dump(unserialize('a:1:{i:18;s:9:"Something";}')); // array(1) {
                                                      //   [18]=>
                                                      //   string(9) "Something"
                                                      // }
票数 28
EN

Stack Overflow用户

发布于 2012-12-17 10:08:58

向PHP字符串数组创建数组的一种简单方法是:

代码语言:javascript
运行
复制
<?PHP
    $array = array("firstname"=>"John", "lastname"=>"doe");
    $json = json_encode($array);
    $phpStringArray = str_replace(array("{", "}", ":"), 
                                  array("array(", "}", "=>"), $json);
    echo phpStringArray;
?>
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6262186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档