w3resource

PHP Array Exercises : Find unique values from multidimensional array and flatten them in zero depth

PHP Array: Exercise-42 with Solution

Write a PHP function to find unique values from multidimensional arrays and flatten them in 0 depth.

Sample Solution:

PHP Code:

<?php
function array_flat($my_array) 
    { 
         $fa = array();
		 $l = 0;
        foreach($my_array as $k => $v ) 
        { 
            if( !is_array( $v ) ) 
            { 
               $fa[ ]= $v; 
                
                continue;           
            } 
             $l++; 
            $fa= array_flat( $v, $fa, $l ); 
            $l--; 
      } 
       
        if( $l == 0 ) $fa = array_values( array_unique( $fa ) );         
        return $fa;       
    } 
$tmp = array( 'a' => array( -1,-2, 0, 2, 3 ), 'b' => array( 'c' => array( -1, 0, 2, 0, 3 ) ) ); 
print_r(array_flat($tmp));
?>

Sample Output:

Array                                                       
(                                                           
    [0] => -1                                               
    [1] => 0                                                
    [2] => 2                                                
    [3] => 3                                                
) 

Flowchart:

Flowchart: PHP - Find unique values from multidimensional array and flatten them in zero depth

PHP Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a PHP program to identify the email addresses which are not unique.
Next: Write a PHP script to merge two commas separated lists with unique value only.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.

PHP: Tips of the Day

PHP: Where does PHP store the error log? (php5, apache, fastcgi, cpanel)

PHP stores error logs in /var/log/apache2 if PHP is an apache2 module. Shared hosts are often storing log files in your root directory /log subfolder. But...if you have access to a php.ini file you can do this:

error_log = /var/log/php-scripts.log

According to rinogo's comment: If you're using cPanel, the master log file you're probably looking for is stored (by default) at

/usr/local/apache/logs/error_log

If all else fails you can check the location of the log file using

<?php phpinfo(); ?>

Ref : https://bit.ly/2EffgH5

 





We are closing our Disqus commenting system for some maintenanace issues. You may write to us at reach[at]yahoo[dot]com or visit us at Facebook