Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 22nd, 2012  |  syntax: None  |  size: 4.10 KB  |  hits: 7  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Arrange the array in required sequence
  2. Array
  3. (
  4.     [0] => Array
  5.         (
  6.             [COMPANY NAME] => 1
  7.             [LPO NUMBER] => PO1
  8.             [LPO DATE] => 2011-04-13 10:08:37
  9.             [LPO AMT] => 1000
  10.             [PENDING AMT] => 1000
  11.             [PRIORITY] => 1
  12.             [AMOUNT] => 200
  13.             [BENEFICIARY NAME] => Self
  14.             [PAYMENT AS] => 1
  15.             [VENDOR NAME] => 0
  16.             [FINAL PAYMENT] =>
  17.             [doc_id] => 2
  18.             [Vendor Name] => Dept. of Economic Development.
  19.             [Reference Number] => PR_XHA_210
  20.             [Pay Cheque Number] => N/A
  21.             [Paid] => 0
  22.         )
  23.  
  24.     [1] => Array
  25.         (
  26.             [COMPANY NAME] => 1
  27.             [LPO NUMBER] => PO1
  28.             [LPO DATE] => 2011-04-13 10:08:37
  29.             [LPO AMT] => 1000
  30.             [PENDING AMT] => 800
  31.             [PRIORITY] => 1
  32.             [AMOUNT] => 800
  33.             [BENEFICIARY NAME] => Self
  34.             [PAYMENT AS] => 1
  35.             [VENDOR NAME] => 0
  36.             [FINAL PAYMENT] =>
  37.             [doc_id] => 3
  38.             [Vendor Name] => Dept. of Economic Development.
  39.             [Reference Number] => PR_XHA_211
  40.             [Pay Cheque Number] => N/A
  41.             [Paid] => 0
  42.         )
  43.  
  44. )
  45.        
  46. [0] => Array
  47.         (
  48.             [Reference Number] => PR_XHA_210
  49.             [Vendor Name] => Dept. of Economic Development.
  50.             [BENEFICIARY NAME] => Self
  51.             [LPO DATE] => 2011-04-13 10:08:37
  52.             [LPO NUMBER] => PO1
  53.             [LPO AMT] => 1000
  54.             [Paid] => 0
  55.             [AMOUNT] => 200
  56.             [doc_id] => 2
  57.             [doc_id] => 2
  58.             [Pay Cheque Number] => N/A
  59.  
  60.         )
  61.        
  62. $keys = array(
  63.     'Reference Number',
  64.     'Vendor Name',
  65.     ...
  66. );
  67.  
  68. $reordered = array();
  69. foreach ($array as $item) {
  70.     $new_item = array();
  71.     foreach ($keys as $key) {
  72.         $new_item[$key] = $item[$key];
  73.     }
  74.     $reordered[] = $new_item;
  75. }
  76.        
  77. function sort_keys($a, $b) {
  78.     static $keys = array(
  79.         'Reference Number',
  80.         'Vendor Name',
  81.         ...
  82.     );
  83.  
  84.     return array_search($a, $keys) - array_search($b, $keys);
  85. }
  86.  
  87. foreach ($array as &$item) {
  88.     uksort($item, 'sort_keys');
  89. }
  90.        
  91. $keys = array(
  92.     'Reference Number',
  93.     'Vendor Name',
  94.     ...
  95. );
  96.  
  97. foreach ($array as $item) {
  98.     foreach ($keys as $key) {
  99.         printf('<tr><th>%s</th><td>%s</td></tr>',
  100.             htmlspecialchars($key),
  101.             htmlspecialchars($item[$key]));
  102.     }
  103. }
  104.        
  105. $rearrangedArray = array(
  106.     'Reference Number' => $oldArray['Reference Number'],
  107.     'Vendor Name'      => $oldArray['Vendor Name'],
  108.     ...
  109. );
  110.        
  111. <tr>
  112.     <td>Reference Number:</td> <td><?php echo $array['Reference Number']; ?></td>
  113.     <td>Vendor Name:</td>      <td><?php echo $array['Vendor Name']; ?></td>
  114.     ...
  115. </tr>
  116.        
  117. <?php
  118.  
  119. // $input  (Array) - the array containing the element
  120. // $index (int) - the index of the element you need to move
  121.  
  122. function moveUp($input,$index) {
  123.       $new_array = $input;
  124.  
  125.        if((count($new_array)>$index) && ($index>0)){
  126.                  array_splice($new_array, $index-1, 0, $input[$index]);
  127.                  array_splice($new_array, $index+1, 1);
  128.              }
  129.  
  130.        return $new_array;
  131. }
  132.  
  133. function moveDown($input,$index) {
  134.        $new_array = $input;
  135.  
  136.        if(count($new_array)>$index) {
  137.                  array_splice($new_array, $index+2, 0, $input[$index]);
  138.                  array_splice($new_array, $index, 1);
  139.              }
  140.  
  141.        return $new_array;
  142.  }  
  143.  
  144. $input = array("red", "green", "blue", "yellow");
  145.  
  146. $newinput = moveUp($input, 2);
  147. // $newinput is array("red", "blue", "green", "yellow")
  148.  
  149. $input = moveDown($newinput, 1);
  150. // $input is array("red", "green", "blue", "yellow")
  151.  
  152. ?>
  153.        
  154. $myCurrentKey = $myIndexes[$i];
  155.       $myCurrentData = $dataArray[$myCurrentKey];
  156.       echo "<td>".$myCurrentData."</td>";
  157.  }
  158.        
  159. Array
  160. (
  161.     [0] => Array
  162.         (
  163.             [COMPANY NAME] => 1
  164.             [LPO NUMBER] => PO1
  165.          )
  166.     [0] => Array
  167.         (
  168.             [AMOUNT] => 200
  169.             [doc_id] => 2
  170.          )
  171. )
  172.        
  173. $together = array(
  174.   $your_array[1]['AMOUNT'],
  175.   $your_array[0]['COMPANY NAME'],
  176.   $your_array[0]['LPO NUMBER'],
  177.   $your_array[1]['doc_id']
  178. );