>백엔드 개발 >PHP 튜토리얼 >这么获取数组值?

这么获取数组值?

WBOY
WBOY원래의
2016-06-23 13:46:31888검색

array(100) {
  [0] => string(3) "1_1"
  [1] => string(3) "2_1"
  [2] => string(3) "2_2"
  [3] => string(3) "3_1"
  [4] => string(3) "3_2"
  [5] => string(3) "3_3"
  .....
}


输入"3_"就得
array(3) {
  ["0"] => string(1) "1"
  ["1"] => string(1) "2"
  ["2"] => string(1) "3"
请问这么取?


回复讨论(解决方案)

$data =array("1_1","2_1","2_2","3_1","3_2","3_3");$need="3_";$ret = array_filter($data,function($item) use($need){	return strpos($item,$need) === 0;});var_dump($ret);

$d = array(  "1_1",  "2_1",  "2_2",  "3_1",  "3_2",  "3_3",);$in = '3_';$out = array_values(  array_map(function($s) use (&$in) {    return substr($s, strlen($in));  }, preg_grep("/$in/", $d)));print_r($out);
Array(    [0] => 1    [1] => 2    [2] => 3)

$data =array("1_1","2_1","2_2","3_1","3_2","3_3");$need="3_";$ret = array_filter($data,function($item) use($need){	return strpos($item,$need) === 0;});var_dump($ret);


哦 只要后半部分

$data =array("1_1","2_1","2_2","3_1","3_2","3_3");
$need="3_";


$ret =array();

foreach($data as $item){
if(strpos($item,$need) === 0){
$ret[] = substr($item,strlen($need));
}
}

var_dump($ret);
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.