009.phpt 623 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. --TEST--
  2. FFI 009: memcpy(), memcmp(), memset() and sizeof()
  3. --EXTENSIONS--
  4. ffi
  5. --INI--
  6. ffi.enable=1
  7. --FILE--
  8. <?php
  9. $a = FFI::new("int[3]");
  10. $a[1] = 10;
  11. $a[2] = 20;
  12. $b = FFI::new("int[4]");
  13. var_dump(FFI::memcmp($b, $a, FFI::sizeof($a)));
  14. FFI::memcpy($b, $a, FFI::sizeof($a));
  15. var_dump($b);
  16. var_dump(FFI::memcmp($b, $a, FFI::sizeof($a)));
  17. FFI::memset($a, -1, FFI::sizeof($a));
  18. var_dump($a);
  19. ?>
  20. --EXPECTF--
  21. int(-1)
  22. object(FFI\CData:int32_t[4])#%d (4) {
  23. [0]=>
  24. int(0)
  25. [1]=>
  26. int(10)
  27. [2]=>
  28. int(20)
  29. [3]=>
  30. int(0)
  31. }
  32. int(0)
  33. object(FFI\CData:int32_t[3])#%d (3) {
  34. [0]=>
  35. int(-1)
  36. [1]=>
  37. int(-1)
  38. [2]=>
  39. int(-1)
  40. }