ホームページ >バックエンド開発 >PHPチュートリアル >配列値ソリューションのアイデア

配列値ソリューションのアイデア

WBOY
WBOYオリジナル
2016-06-13 12:05:541086ブラウズ

配列値

Array<br />(<br />    [iso.3.6.1.4.1.2021.4.1.0] => INTEGER: 0<br />    [iso.3.6.1.4.1.2021.4.2.0] => STRING: "swap"<br />    [iso.3.6.1.4.1.2021.4.3.0] => INTEGER: 16777208<br />    [iso.3.6.1.4.1.2021.4.4.0] => INTEGER: 16777208<br />    [iso.3.6.1.4.1.2021.4.5.0] => INTEGER: 16324040<br />    [iso.3.6.1.4.1.2021.4.6.0] => INTEGER: 4484096<br /> <br />    [iso.3.6.1.4.1.2021.9.1.6.1] => INTEGER: 1032088<br />    [iso.3.6.1.4.1.2021.9.1.6.2] => INTEGER: 458942624<br />    [iso.3.6.1.4.1.2021.9.1.6.3] => INTEGER: 8162020<br />    [iso.3.6.1.4.1.2021.9.1.6.4] => INTEGER: 99150<br />    [iso.3.6.1.4.1.2021.9.1.6.5] => INTEGER: 3096336<br />    [iso.3.6.1.4.1.2021.9.1.6.6] => INTEGER: 1032088<br />  <br />)

キー値が iso.3.6.1.4.1.2021.9.1.6.* である値を取得する方法は、前のキー値が iso.3.6.1.4.1.2021.9.1 であることを置き換えます。 .6 すべての値を合計します
-----解法---------
$arr=array(<br />    'iso.3.6.1.4.1.2021.4.1.0' => '0',<br />    'iso.3.6.1.4.1.2021.4.2.0' => 'swap',<br />    'iso.3.6.1.4.1.2021.4.3.0' => '16777208',<br />    'iso.3.6.1.4.1.2021.4.4.0' => '16777208',<br />    'iso.3.6.1.4.1.2021.4.5.0' => '16324040',<br />    'iso.3.6.1.4.1.2021.4.6.0' => '4484096',<br />    'iso.3.6.1.4.1.2021.9.1.6.1' => '1032088',<br />    'iso.3.6.1.4.1.2021.9.1.6.2' => '458942624',<br />    'iso.3.6.1.4.1.2021.9.1.6.3' => '8162020',<br />    'iso.3.6.1.4.1.2021.9.1.6.4' => '99150',<br />    'iso.3.6.1.4.1.2021.9.1.6.5' => '3096336',<br />    'iso.3.6.1.4.1.2021.9.1.6.6' => '1032088'<br />);<br />$num=0;<br />foreach($arr as $k=>$v){<br />	if(version_compare($k, 'iso.3.6.1.4.1.2021.9.1.6.0', '>')){<br />		$num+=$v;<br />	}<br />}<br />echo $num;<br />/*<br />472364306<br />*/

------解決策-------
$ar = 你的数组<br />$res = array();<br />foreach($ar as $k=>$v){<br />    if(strpos($k, 'iso.3.6.1.4.1.2021.9.1.6') !== false){<br />	     $t  = explode(': ', $v);<br />	    $res[] = $t[1];<br />	}<br />}<br />echo array_sum($res);

-- -- --解決策------------------
$ar = array (<br />  'iso.3.6.1.4.1.2021.4.1.0' => 'INTEGER: 0',<br />  'iso.3.6.1.4.1.2021.4.2.0' => 'STRING: "swap"',<br />  'iso.3.6.1.4.1.2021.4.3.0' => 'INTEGER: 16777208',<br />  'iso.3.6.1.4.1.2021.4.4.0' => 'INTEGER: 16777208',<br />  'iso.3.6.1.4.1.2021.4.5.0' => 'INTEGER: 16324040',<br />  'iso.3.6.1.4.1.2021.4.6.0' => 'INTEGER: 4483856',<br />  'iso.3.6.1.4.1.2021.4.11.0' => 'INTEGER: 21261064',<br />  'iso.3.6.1.4.1.2021.4.12.0' => 'INTEGER: 16000',<br />  'iso.3.6.1.4.1.2021.4.14.0' => 'INTEGER: 72720',<br />  'iso.3.6.1.4.1.2021.4.15.0' => 'INTEGER: 11089928',<br />  'iso.3.6.1.4.1.2021.4.100.0' => 'INTEGER: 0',<br /><br />  'iso.3.6.1.4.1.2021.9.1.6.1' => 'INTEGER: 1032088',<br />  'iso.3.6.1.4.1.2021.9.1.6.2' => 'INTEGER: 458942624',<br />  'iso.3.6.1.4.1.2021.9.1.6.3' => 'INTEGER: 8162020',<br />  'iso.3.6.1.4.1.2021.9.1.6.4' => 'INTEGER: 99150',<br />  'iso.3.6.1.4.1.2021.9.1.6.5' => 'INTEGER: 3096336',<br />  'iso.3.6.1.4.1.2021.9.1.6.6' => 'INTEGER: 1032088',<br />);<br /><br />$num = 0;<br />foreach($ar as $k=>$v){<br />  if($k >= 'iso.3.6.1.4.1.2021.9.1.6.1'){<br />    strtok($v, ':');<br />    $num += strtok('');<br />  }<br />}<br />echo $num;<br />

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。