Annotation of embedaddon/php/ext/standard/file.h, revision 1.1.1.2
1.1 misho 1: /*
2: +----------------------------------------------------------------------+
3: | PHP Version 5 |
4: +----------------------------------------------------------------------+
5: | Copyright (c) 1997-2012 The PHP Group |
6: +----------------------------------------------------------------------+
7: | This source file is subject to version 3.01 of the PHP license, |
8: | that is bundled with this package in the file LICENSE, and is |
9: | available through the world-wide-web at the following url: |
10: | http://www.php.net/license/3_01.txt |
11: | If you did not receive a copy of the PHP license and are unable to |
12: | obtain it through the world-wide-web, please send a note to |
13: | license@php.net so we can mail you a copy immediately. |
14: +----------------------------------------------------------------------+
15: | Author: Rasmus Lerdorf <rasmus@lerdorf.on.ca> |
16: +----------------------------------------------------------------------+
17: */
18:
1.1.1.2 ! misho 19: /* $Id$ */
1.1 misho 20:
21: /* Synced with php 3.0 revision 1.30 1999-06-16 [ssb] */
22:
23: #ifndef FILE_H
24: #define FILE_H
25:
26: PHP_MINIT_FUNCTION(file);
27: PHP_MSHUTDOWN_FUNCTION(file);
28:
29: PHP_FUNCTION(tempnam);
30: PHP_NAMED_FUNCTION(php_if_tmpfile);
31: PHP_NAMED_FUNCTION(php_if_fopen);
32: PHPAPI PHP_FUNCTION(fclose);
33: PHP_FUNCTION(popen);
34: PHP_FUNCTION(pclose);
35: PHPAPI PHP_FUNCTION(feof);
36: PHPAPI PHP_FUNCTION(fread);
37: PHPAPI PHP_FUNCTION(fgetc);
38: PHPAPI PHP_FUNCTION(fgets);
39: PHP_FUNCTION(fscanf);
40: PHPAPI PHP_FUNCTION(fgetss);
41: PHP_FUNCTION(fgetcsv);
42: PHP_FUNCTION(fputcsv);
43: PHPAPI PHP_FUNCTION(fwrite);
44: PHPAPI PHP_FUNCTION(fflush);
45: PHPAPI PHP_FUNCTION(rewind);
46: PHPAPI PHP_FUNCTION(ftell);
47: PHPAPI PHP_FUNCTION(fseek);
48: PHP_FUNCTION(mkdir);
49: PHP_FUNCTION(rmdir);
50: PHPAPI PHP_FUNCTION(fpassthru);
51: PHP_FUNCTION(readfile);
52: PHP_FUNCTION(umask);
53: PHP_FUNCTION(rename);
54: PHP_FUNCTION(unlink);
55: PHP_FUNCTION(copy);
56: PHP_FUNCTION(file);
57: PHP_FUNCTION(file_get_contents);
58: PHP_FUNCTION(file_put_contents);
59: PHP_FUNCTION(get_meta_tags);
60: PHP_FUNCTION(flock);
61: PHP_FUNCTION(fd_set);
62: PHP_FUNCTION(fd_isset);
63: #if (!defined(__BEOS__) && !defined(NETWARE) && HAVE_REALPATH) || defined(ZTS)
64: PHP_FUNCTION(realpath);
65: #endif
66: #ifdef HAVE_FNMATCH
67: PHP_FUNCTION(fnmatch);
68: #endif
69: PHP_NAMED_FUNCTION(php_if_ftruncate);
70: PHP_NAMED_FUNCTION(php_if_fstat);
71: PHP_FUNCTION(sys_get_temp_dir);
72:
73: PHP_MINIT_FUNCTION(user_streams);
74:
1.1.1.2 ! misho 75: PHPAPI int php_le_stream_context(TSRMLS_D);
1.1 misho 76: PHPAPI int php_set_sock_blocking(int socketd, int block TSRMLS_DC);
77: PHPAPI int php_copy_file(char *src, char *dest TSRMLS_DC);
78: PHPAPI int php_copy_file_ex(char *src, char *dest, int src_chk TSRMLS_DC);
1.1.1.2 ! misho 79: PHPAPI int php_copy_file_ctx(char *src, char *dest, int src_chk, php_stream_context *ctx TSRMLS_DC);
1.1 misho 80: PHPAPI int php_mkdir_ex(char *dir, long mode, int options TSRMLS_DC);
81: PHPAPI int php_mkdir(char *dir, long mode TSRMLS_DC);
82: PHPAPI void php_fgetcsv(php_stream *stream, char delimiter, char enclosure, char escape_char, size_t buf_len, char *buf, zval *return_value TSRMLS_DC);
1.1.1.2 ! misho 83: PHPAPI int php_fputcsv(php_stream *stream, zval *fields, char delimiter, char enclosure, char escape_char TSRMLS_DC);
1.1 misho 84:
85: #define META_DEF_BUFSIZE 8192
86:
87: #define PHP_FILE_USE_INCLUDE_PATH 1
88: #define PHP_FILE_IGNORE_NEW_LINES 2
89: #define PHP_FILE_SKIP_EMPTY_LINES 4
90: #define PHP_FILE_APPEND 8
91: #define PHP_FILE_NO_DEFAULT_CONTEXT 16
92:
93: typedef enum _php_meta_tags_token {
94: TOK_EOF = 0,
95: TOK_OPENTAG,
96: TOK_CLOSETAG,
97: TOK_SLASH,
98: TOK_EQUAL,
99: TOK_SPACE,
100: TOK_ID,
101: TOK_STRING,
102: TOK_OTHER
103: } php_meta_tags_token;
104:
105: typedef struct _php_meta_tags_data {
106: php_stream *stream;
107: int ulc;
108: int lc;
109: char *input_buffer;
110: char *token_data;
111: int token_len;
112: int in_meta;
113: } php_meta_tags_data;
114:
115: php_meta_tags_token php_next_meta_token(php_meta_tags_data * TSRMLS_DC);
116:
117: typedef struct {
118: int pclose_ret;
119: size_t def_chunk_size;
120: long auto_detect_line_endings;
121: long default_socket_timeout;
122: char *user_agent; /* for the http wrapper */
1.1.1.2 ! misho 123: char *from_address; /* for the ftp and http wrappers */
1.1 misho 124: char *user_stream_current_filename; /* for simple recursion protection */
125: php_stream_context *default_context;
126: HashTable *stream_wrappers; /* per-request copy of url_stream_wrappers_hash */
127: HashTable *stream_filters; /* per-request copy of stream_filters_hash */
1.1.1.2 ! misho 128: HashTable *wrapper_errors; /* key: wrapper address; value: linked list of char* */
1.1 misho 129: } php_file_globals;
130:
131: #ifdef ZTS
132: #define FG(v) TSRMG(file_globals_id, php_file_globals *, v)
133: extern PHPAPI int file_globals_id;
134: #else
135: #define FG(v) (file_globals.v)
136: extern PHPAPI php_file_globals file_globals;
137: #endif
138:
139:
140: #endif /* FILE_H */
141:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>