首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >API返回json aray对象,其中包含点、空格和%的键。如何从数组中重命名或删除密钥?

API返回json aray对象,其中包含点、空格和%的键。如何从数组中重命名或删除密钥?
EN

Stack Overflow用户
提问于 2018-05-04 17:41:05
回答 1查看 70关注 0票数 0

返回的对象API包含点、空格和其中的%。如何删除或重命名这些密钥。

代码语言:javascript
复制
array:61 [▼
"status" => 0
"NetRange" => "31.0.0.0 - 31.255.255.255"
"CIDR" => "31.0.0.0/8"
"OrgName" => "RIPE Network Coordination Centre"
"OrgId" => "RIPE"
"Address" => "P.O. Box 10096"
"City" => "Amsterdam"
"StateProv" => ""
"PostalCode" => "1001EB"
"Country" => "NL"
"Referral.Server" => "whois://whois.ripe.net"
"Org Abuse.Handle" => "ABUSE3850-ARIN"
"Org Abuse.Name" => "Abuse Contact"
"Org Abuse.Phone" => "+31205354444"
"Org Abuse.Email" => "abuse@ripe.net"
"Org Abuse.Ref" => "https://whois.arin.net/rest/poc/ABUSE3850-ARIN"
"Org Tech.Handle" => "RNO29-ARIN"
"% Org Tech.Ref" => "https://whois.arin.net"
"inetnum" => "31.13.69.0 - 31.13.69.255"
"netname" => "IAD1"
"descr" => "Facebook"
"country" => "US"
"admin-c" => "RD4299-RIPE, PH4972-RIPE"
"tech-c" => "RD4299-RIPE, PH4972-RIPE"
"mnt-by" => "fb-neteng, fb-neteng"
"mnt-lower" => "fb-neteng"
"mnt-routes" => "fb-neteng"
"created" => "2014-06-11T18:46:37Z, 2011-04-11T18:49:50Z"
"last-modified" => "2014-06-11T18:46:37Z, 2013-08-14T15:49:58Z"
"source" => "RIPE, RIPE # Filtered"
"role" => "RIPE DBM"
"address" => "1601 Willow Rd., Menlo Park, CA, 94025"
"nic-hdl" => "RD4299-RIPE"
"abuse-mailbox" => "domain@fb.com"
"% This query was served by the RIPE Database Query Service version 1.91.2 (ANGUS)" => ""
"cidr_mask" => array:1 [▶]
]

类似于将键、Org、Abuse.Handle、% Org Tech.Ref更改为OrgTechRef。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-04 18:19:39

您可以在替换()键() 地图()联合()的帮助下尝试这样的方法。

步骤:

1.首先使用array_keys()从数组中获取密钥。

然后,2.通过替换不需要的字符(如%. - )和使用array_map()str_replace()来修改键。

3.最终将修改后的键与现有值相结合,以生成结果数组$result

代码语言:javascript
复制
<?php
$array = [
          "nic.hdl" => "RD4299-RIPE",
          "abuse-mailbox" => "domain@fb.com",
          "% This query was served by the RIPE" => ""
         ];

// replacing unwanted characters from every key
function replace_characters($n)
{
    return str_replace(array('-', ' ', '.','%'), '', $n);;
}

$keys = array_keys($array);
$proper_keys = array_map("replace_characters", $keys);
$result = array_combine($proper_keys,$array); // combine modified key & value
print '<pre>';
print_r($result);
print '</pre>';
?>

参见演示https://eval.in/999435

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50180434

复制
相关文章

相似问题

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