[Php] दो आयामी सरणी के उपनियमों से "कॉलम" निकालें



Answers

foreach($array as $key=> $element)
{
    for($i=0; $i<$n; $i++)
    {
        $newArray[$key][$i] = $element[$i];
    }
}

निश्चित नहीं है कि क्या कोई और अधिक कुशल तरीका है

Question

मेरे पास एक सरल, दो आयामी सरणी है:

Array
    (
        [0] => Array
            (
                [0] => abc
                [1] => 123
                [2] => aaaaa

            )

        [1] => Array
            (
                [0] => def
                [1] => 456
                [2] => ddddd
            )

        [2] => Array
            (
                [0] => ghi
                [1] => 789
                [2] => hhhhhhh
            )
    )

मैं एक कुशल कार्य लिखने की कोशिश कर रहा हूं जो प्रत्येक सबरेरे के केवल पहले 'एन' कॉलम के साथ एक सरणी वापस करेगा। दूसरे शब्दों में, यदि n = 2, तो लौटा दिया गया सरणी होगा:

Array
    (
        [0] => Array
            (
                [0] => abc
                [1] => 123


            )

        [1] => Array
            (
                [0] => def
                [1] => 456

            )

        [2] => Array
            (
                [0] => ghi
                [1] => 789

            )
    )



यहां तक ​​कि array_walk के साथ:

array_walk(
    $aYourArray,
    function(&$aSubRow){
        $aSubRow = array_slice($aSubRow, 0, 2);
    }
);



Links