Guest User

Untitled

a guest
Jul 18th, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.59 KB | None | 0 0
  1. <?php
  2. function unset_last_array_element($array){
  3.     $array = array_reverse($array);
  4.     unset($array[0]);
  5.     $array = array_reverse($array);
  6.     return $array;
  7. }
  8.  
  9. function loop($array, $key_array = array(), $count = false){
  10.    
  11.     foreach($array as $key => $value){
  12.        
  13.         if(is_object($value)) $value = (array)$value;
  14.        
  15.         if(is_array($key_array)) if(end($key_array) != $key) $key_array[] = $key;
  16.        
  17.         reset($key_array);
  18.        
  19.         if(is_array($value)){
  20.            
  21.             loop($value, $key_array);
  22.            
  23.         }else{
  24.            
  25.             if(trim($value) != ""){
  26.                
  27.                 if(is_array($key_array)) foreach($key_array as $key_name) print $key_name." - ";
  28.                
  29.                 print ": ".trim($value)."<br>";
  30.                
  31.             }
  32.            
  33.             $key_array = unset_last_array_element($key_array);
  34.            
  35.         }
  36.        
  37.     }
  38.    
  39.     return true;
  40.    
  41. }
  42.  
  43. $array = array(
  44.     'key1' => 'Value1',
  45.     'key2' => 'Value2',
  46.     'key3_multi' => array('key1' => 'Value1', 'key2' => 'Value2'),
  47.     'key4_multi' => array('key1' => 'Value1', 'key2' => 'Value2', 'key3_multi' => array('key1' => 'Value1', 'key2' => 'Value2'))
  48.     );
  49.  
  50. loop($array);
  51.  
  52. ?>
  53.  
  54.  
  55. Outputs:
  56.  
  57. key1 - : Value1
  58. key2 - : Value2
  59. key3_multi - key1 - : Value1
  60. key3_multi - key2 - : Value2
  61. key3_multi - key4_multi - key1 - : Value1
  62. key3_multi - key4_multi - key2 - : Value2
  63. key3_multi - key4_multi - key3_multi - key1 - : Value1
  64. key3_multi - key4_multi - key3_multi - key2 - : Value2
  65.  
  66. Want:
  67.  
  68. key1 - : Value1
  69. key2 - : Value2
  70. key3_multi - key1 - : Value1
  71. key3_multi - key2 - : Value2
  72. key4_multi - key1 - : Value1
  73. key4_multi - key2 - : Value2
  74. key4_multi - key3_multi - key1 - : Value1
  75. key4_multi - key3_multi - key2 - : Value2
Add Comment
Please, Sign In to add comment