에 PHP를 변환하는 데 도움이 필요 :내가이 PHP 코드를 C#
$lines = file("data.csv");
$nested = array();
$links = array();
// first, create a structure that contains the connections between elements
foreach ($lines as $line) {
list($child, $parent) = explode(",", $line);
if (trim($child) == trim($parent)) {
$nested[$parent] = null;
} else {
// add it to the children of parent
$links[$parent][] = $child;
}
}
function process(&$arr) {
global $links;
foreach ($arr as $key => $value) {
// no more children => stop recursion
if (!array_key_exists($key, $links)) {
$array[$key] = null;
continue;
}
// insert its children
$arr[$key] = array_flip($links[$key]);
// recurse down
process($arr[$key]);
}
}
function print_html($multi_dimensional_array)
{
$m = $multi_dimensional_array;
$keys = array();
foreach($m as $key=>$value) {
$keys[] = $key;
}
$i = 0;
while($i < count($multi_dimensional_array)) {
echo '<li><a href="#">'.$keys[$i].'</a>';
if(is_array($multi_dimensional_array[$keys[$i]])) {
echo '<ul>';
print_html($multi_dimensional_array[$keys[$i]]);
echo '</ul>';
}
echo '</li>';
$i++;
}
}
process($nested);
print_html($nested);
data.csv 형식입니다 (값, 부모)의 예는 다음과 같습니다 기본적으로이 무엇을이
one,one
two,two
three,three
sub_one,one
sub_one2,one
sub_two,two
sub_two2,two
sub_two3,two
sub_three,three
sub_sub_one,sub_one
sub_sub_one2,sub_one
PHP 코드는 상위 이름을 키로, 하위를 값으로 포함하는 다차원 배열을 만듭니다. 자식이 하위 하위를 포함하면 하위 키 등을 포함하는 키가됩니다. 그러면 html이 인쇄됩니다 해당 배열에 대해 형식화 된 목록.
어떻게이 C#을 사용하여이 PHP 코드를 수행 할 수 있습니까?
나는 당신이 먼저 시도하고 어떤 문제가 있는지 알아야한다고 생각합니다. 이 사이트는 모든 코드를 작성하지 않습니다. 그것을 시작하고 문제를 직시하십시오. 문제가 충분히 구체적이고 잘 표현 된 경우 여기에서 도움을받을 것입니다 – Dyppl
Dyppl 동의 - 두 언어가 다르며 강점이 다릅니다. 너 자신이 일을 시도하는 노력을 기울이지 않았다면 스스로 해를 끼칠 것이다. – anon
어딘가에 시작하려면'Dictionary'(http://msdn.microsoft.com/en-us/library/xfhwa508.aspx)를 살펴 보는 것이 좋습니다. –