我想获取所有数组数据,其中键从一开始就具有字符'ch'。我怎么得到它?
Array ( [editpostid] => 0 [editpostcat] => 1 [ch114] => on [ch115] => on )
数据的密钥可能会有所不同,因为数字来自数据库中的记录ID。
如何将键开头的'ch'所有数据放到一个单独的数组上?
答案 0 :(得分:1)
这样做
<?php
$arr = array('ch'=>10,'abch'=>20,'ch23'=>45);
$newarr=array();
foreach($arr as $k=>$v)
{
if(substr(strtolower($k),0,2)=='ch')
{
array_push($newarr,$v); // Make use of this if you just need the values
//$newarr[$k]=$v; // Uncomment this and comment above statement, if you need the keys too
}
}
print_r($newarr);
<强>输出:强>
Array
(
[0] => 10
[1] => 45
)
答案 1 :(得分:1)
$charray=array();
foreach($yourarray as $key=>$value){
if(preg_match("/^ch/",$key)){
$charray[$key]=>$value;
}
}
//$charray is the new arrayas you asked for
echo implode(',',$charray);
请参阅 official documentation for preg_match 以获取更多信息