ホームページ  >  記事  >  バックエンド開発  >  2 次元配列がありますが、その書き方がわかりません。

2 次元配列がありますが、その書き方がわかりません。

WBOY
WBOYオリジナル
2016-06-23 14:12:251048ブラウズ

この投稿は、rightnow5 によって、2013-06-06 20:26:33 に最終編集されました

2 次元配列 PHP



これはエフェクトのデモンストレーションです。一部の黒いカテゴリには、右側に新しいまたはホットの小さなアイコンがあります
以下を使用できます。 この設定は、どのカテゴリが新規またはホットを表示するかを制御します
たとえば、カテゴリの最初のグループの 2 番目のリンクが新しいアイコンを表示したい場合、背景設定は 1:2 です
カテゴリの 2 番目のグループは、バックグラウンド設定で new を表示する必要があります 2:1 このように制御します




					foreach($jsonArray as $i=>$i$jsonObject){ //输出一级分类						echo '分组链接';						foreach($array as $k=>$id)							{    //输出二级分类,二级分类有些需要设置图标,获取了用户设置的参数,怎么来判断哪个子分类要添加图标,然后在那个分类输出图片class					     echo '该分组下的子链接';							}					}



ユーザーが 1:2 など 1 つだけを設定した場合でも、私は判断しますが、たとえば、新しいアイコンの設定カテゴリには 1:2、2:4、3:2 の 3 つのサブカテゴリがあります。
php の書き方がわかりません

ディスカッションへの返信 (解決策)

1:2 どうやって書きましたかit

<?php$setting_clsss = array(	'blod'=>'5:3,1:2',	'new1' => '4:2',	'new2' => '2:2',);// 处理成array(行=>array(列=>class))的结构$row_class = array();foreach($setting_clsss as $key => $value) {	if(strpos($value, ',') === false) {		$value .=',';	}	foreach(explode(',', $value) as $class) {		if(!$class) continue;		list($row, $column) = explode(':', $class);		$row_class[$row][$column] = $key; // 多个可以用数组表示	}}$links = array(	array(1, 2),	array(1, 2),	array(1, 2),	array(1, 2),	array(1, 2, 3),);foreach($links as $row=>$link){ //输出一级分类	$row += 1; //从0开始so+1    echo '分组链接', $row, ' : ';	    foreach($link as $column=>$id) {    		//输出二级分类,二级分类有些需要设置图标,获取了用户设置的参数,怎么来判断哪个子分类要添加图标,然后在那个分类输出图片class		$column += 1; //从0开始so+1		echo '连接', $column;		if(isset($row_class[$row][$column])) { 			echo '-',$row_class[$row][$column];		}		echo ' ';    }	echo "\n";}

この投稿は xuzuning によって最後に投稿されました: 2013-06-07 11:07 :19 編集

$ar = array(  'blod'=>'5:3,1:2',  'new1' => '4:2',  'new2' => '2:2',);foreach($ar as $k=>$r) {  foreach(array_chunk(preg_split('/[,:]/', $r), 2) as $v)    echo "$k : $v[0]行$v[1]列\n";}
blod : 5 行 3 列
blod : 1 行 2 列
new1 : 4 行 2 列
new2 : 2 行 2 列

preg_split('/[,:]/', $r) と書く
preg_split('/D+/', $r)
より一般的

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