从关联数组键中删除空格

时间:2015-11-26 19:24:25

标签: php

我有一个关联,在键和值中输出空格。我需要从第一个字母和最后一个字母中删除空格,并保留其间的空格。

我试过了

IList<T>

这样可以完美地剥离值,但不是键。如何剥离密钥和值?

4 个答案:

答案 0 :(得分:9)

密钥必须单独处理:

$a = array_map('trim', array_keys($stripResults));
$b = array_map('trim', $stripResults);
$stripResults = array_combine($a, $b);

答案 1 :(得分:1)

如果您正在查看此内容并需要删除或替换不在键的开头或结尾的空格,则可以将数组传递给str_replace

$my_array = array( 'one 1' => '1', 'two 2' => '2' );
$keys = str_replace( ' ', '', array_keys( $my_array ) );
$results = array_combine( $keys, array_values( $my_array ) );

实施例: https://glot.io/snippets/ejej1chzg3

答案 2 :(得分:0)

试试这个功能会帮助你..

function trimArrayKey(&$array)
{
    $array = array_combine(
        array_map(
            function ($str) {
                return str_replace(" ", "_", $str);
            },
            array_keys($array)
        ),
        array_values($array)
    );

    foreach ($array as $key => $val) {
        if (is_array($val)) {
            trimArrayKey($array[$key]);
        }
    }
}

希望这会有所帮助......

答案 3 :(得分:0)

被接受的答案并不能解决我的特定情况下的问题,但这可以解决问题。

Serialization Error:  ---> System.InvalidOperationException: There is an error in XML document (1, 1). ---> System.Xml.XmlException: Data at the root level is invalid. Line 1, position 1.
   at System.Xml.XmlTextReaderImpl.Throw(Exception e)
   at System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace()
   at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
   at System.Xml.XmlReader.MoveToContent()
   at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderStatusList.Read5_StatusList()
   --- End of inner exception stack trace ---
   at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, Str