Свежайшие Пирожки от CakePHP по-русски

Полнейшее руководство CakePHP 1.2 на русском языке, горячие новости и полезные статьи

pushDiff

array Set::pushDiff ($array1, $array2)

This function merges two arrays and pushes the differences in array2 to the bottom of the resultant array.

Example 1 Простой текст
  1. $array1 = array('ModelOne' => array('id'=>1001, 'field_one'=>'a1.m1.f1', 'field_two'=>'a1.m1.f2'));
  2. $array2 = array('ModelOne' => array('id'=>1003, 'field_one'=>'a3.m1.f1', 'field_two'=>'a3.m1.f2', 'field_three'=>'a3.m1.f3'));
  3. $res = Set::pushDiff($array1, $array2);
  4. /* $res now looks like:
  5. Array
  6. (
  7. [ModelOne] => Array
  8. (
  9. [id] => 1001
  10. [field_one] => a1.m1.f1
  11. [field_two] => a1.m1.f2
  12. [field_three] => a3.m1.f3
  13. )
  14. )
  15. */
Example 2 Простой текст
  1. $array1 = array("a"=>"b", 1 => 20938, "c"=>"string");
  2. $array2 = array("b"=>"b", 3 => 238, "c"=>"string", array("extra_field"));
  3. $res = Set::pushDiff($array1, $array2);
  4. /* $res now looks like:
  5. Array
  6. (
  7. [a] => b
  8. [1] => 20938
  9. [c] => string
  10. [b] => b
  11. [3] => 238
  12. [4] => Array
  13. (
  14. [0] => extra_field
  15. )
  16. )
  17. */