excel.h 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. +----------------------------------------------------------------------+
  3. | XlsWriter Extension |
  4. +----------------------------------------------------------------------+
  5. | Copyright (c) 2017-2018 The Viest |
  6. +----------------------------------------------------------------------+
  7. | http://www.viest.me |
  8. +----------------------------------------------------------------------+
  9. | Author: viest <[email protected]> |
  10. +----------------------------------------------------------------------+
  11. */
  12. #ifndef VTIFUL_XLS_H
  13. #define VTIFUL_XLS_H
  14. #define V_XLS_HANDLE "handle"
  15. #define V_XLS_FIL "fileName"
  16. #define V_XLS_COF "config"
  17. #define V_XLS_PAT "path"
  18. #define V_XLS_TYPE "read_row_type"
  19. #define V_XLS_CONST_READ_TYPE_INT "TYPE_INT"
  20. #define V_XLS_CONST_READ_TYPE_DOUBLE "TYPE_DOUBLE"
  21. #define V_XLS_CONST_READ_TYPE_STRING "TYPE_STRING"
  22. #define V_XLS_CONST_READ_TYPE_DATETIME "TYPE_TIMESTAMP"
  23. #define V_XLS_CONST_READ_SKIP_NONE "SKIP_NONE"
  24. #define V_XLS_CONST_READ_SKIP_EMPTY_ROW "SKIP_EMPTY_ROW"
  25. #define V_XLS_CONST_READ_SKIP_EMPTY_CELLS "SKIP_EMPTY_CELLS"
  26. #define V_XLS_CONST_READ_SKIP_EMPTY_VALUE "SKIP_EMPTY_VALUE"
  27. #define READ_TYPE_EMPTY 0x00
  28. #define READ_TYPE_STRING 0x01
  29. #define READ_TYPE_INT 0x02
  30. #define READ_TYPE_DOUBLE 0x04
  31. #define READ_TYPE_DATETIME 0x08
  32. #define GET_CONFIG_PATH(dir_path_res, class_name, object) \
  33. do { \
  34. zval rv; \
  35. zval *_config = zend_read_property(class_name, object, ZEND_STRL(V_XLS_COF), 0, &rv); \
  36. (dir_path_res) = zend_hash_str_find(Z_ARRVAL_P(_config), ZEND_STRL(V_XLS_PAT)); \
  37. } while(0)
  38. extern zend_class_entry *vtiful_xls_ce;
  39. VTIFUL_STARTUP_FUNCTION(excel);
  40. #endif