php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
fileinfo.c File Reference
#include "php.h"
#include "libmagic/magic.h"
#include "php_ini.h"
#include "ext/standard/info.h"
#include "ext/standard/file.h"
#include "php_fileinfo.h"
#include "fileinfo_arginfo.h"
#include "fopen_wrappers.h"
#include "Zend/zend_exceptions.h"

Go to the source code of this file.

Data Structures

struct  _php_fileinfo
 
struct  _finfo_object
 

Macros

#define HOWMANY   65536
 
#define Z_FINFO_P(zv)
 
#define FILEINFO_FROM_OBJECT(finfo, object)
 
#define FINFO_SET_OPTION(magic, options)
 
#define FILEINFO_MODE_BUFFER   0
 
#define FILEINFO_MODE_STREAM   1
 
#define FILEINFO_MODE_FILE   2
 

Typedefs

typedef struct _php_fileinfo php_fileinfo
 
typedef struct _finfo_object finfo_object
 

Functions

PHP_FILEINFO_API zend_objectfinfo_objects_new (zend_class_entry *class_type)
 
 PHP_MINIT_FUNCTION (finfo)
 
 PHP_MINFO_FUNCTION (fileinfo)
 
 PHP_FUNCTION (finfo_open)
 
 PHP_FUNCTION (finfo_close)
 
 PHP_FUNCTION (finfo_set_flags)
 
 PHP_FUNCTION (finfo_file)
 
 PHP_FUNCTION (finfo_buffer)
 
 PHP_FUNCTION (mime_content_type)
 

Variables

zend_class_entryfinfo_class_entry
 
zend_module_entry fileinfo_module_entry
 

Macro Definition Documentation

◆ FILEINFO_FROM_OBJECT

#define FILEINFO_FROM_OBJECT ( finfo,
object )
Value:
{ \
finfo_object *obj = Z_FINFO_P(object); \
finfo = obj->ptr; \
if (!finfo) { \
zend_throw_error(NULL, "Invalid finfo object"); \
RETURN_THROWS(); \
} \
}
struct _finfo_object finfo_object
#define Z_FINFO_P(zv)
Definition fileinfo.c:57
#define NULL
Definition gdcache.h:45
php_fileinfo * ptr
Definition fileinfo.c:49

Definition at line 59 of file fileinfo.c.

◆ FILEINFO_MODE_BUFFER

#define FILEINFO_MODE_BUFFER   0

Definition at line 286 of file fileinfo.c.

◆ FILEINFO_MODE_FILE

#define FILEINFO_MODE_FILE   2

Definition at line 288 of file fileinfo.c.

◆ FILEINFO_MODE_STREAM

#define FILEINFO_MODE_STREAM   1

Definition at line 287 of file fileinfo.c.

◆ FINFO_SET_OPTION

#define FINFO_SET_OPTION ( magic,
options )
Value:
if (magic_setflags(magic, options) == -1) { \
php_error_docref(NULL, E_WARNING, "Failed to set option '" ZEND_LONG_FMT "' %d:%s", \
}
file_public int magic_setflags(struct magic_set *ms, int flags)
Definition magic.c:315
file_public int magic_errno(struct magic_set *ms)
Definition magic.c:298
file_public const char * magic_error(struct magic_set *ms)
Definition magic.c:290
PHP_JSON_API size_t int options
Definition php_json.h:102
Definition file.h:202
#define RETURN_FALSE
Definition zend_API.h:1058
#define E_WARNING
Definition zend_errors.h:24
#define ZEND_LONG_FMT
Definition zend_long.h:87

Definition at line 97 of file fileinfo.c.

◆ HOWMANY

#define HOWMANY   65536

Definition at line 28 of file fileinfo.c.

◆ Z_FINFO_P

#define Z_FINFO_P ( zv)
Value:
php_finfo_fetch_object(Z_OBJ_P((zv)))
zval * zv
Definition ffi.c:3975
#define Z_OBJ_P(zval_p)
Definition zend_types.h:990

Definition at line 57 of file fileinfo.c.

Typedef Documentation

◆ finfo_object

typedef struct _finfo_object finfo_object

◆ php_fileinfo

typedef struct _php_fileinfo php_fileinfo

Function Documentation

◆ finfo_objects_new()

PHP_FILEINFO_API zend_object * finfo_objects_new ( zend_class_entry * class_type)

Definition at line 84 of file fileinfo.c.

◆ PHP_FUNCTION() [1/6]

PHP_FUNCTION ( finfo_buffer )

Definition at line 453 of file fileinfo.c.

◆ PHP_FUNCTION() [2/6]

PHP_FUNCTION ( finfo_close )

Definition at line 255 of file fileinfo.c.

◆ PHP_FUNCTION() [3/6]

PHP_FUNCTION ( finfo_file )

Definition at line 446 of file fileinfo.c.

◆ PHP_FUNCTION() [4/6]

PHP_FUNCTION ( finfo_open )

Definition at line 159 of file fileinfo.c.

◆ PHP_FUNCTION() [5/6]

PHP_FUNCTION ( finfo_set_flags )

Definition at line 268 of file fileinfo.c.

◆ PHP_FUNCTION() [6/6]

PHP_FUNCTION ( mime_content_type )

Definition at line 460 of file fileinfo.c.

◆ PHP_MINFO_FUNCTION()

PHP_MINFO_FUNCTION ( fileinfo )

Definition at line 144 of file fileinfo.c.

◆ PHP_MINIT_FUNCTION()

PHP_MINIT_FUNCTION ( finfo )

Definition at line 106 of file fileinfo.c.

Variable Documentation

◆ fileinfo_module_entry

zend_module_entry fileinfo_module_entry
Initial value:
= {
"fileinfo",
ext_functions,
PHP_MINFO(fileinfo),
}
#define PHP_MINFO
Definition php.h:396
#define PHP_MINIT
Definition php.h:392
#define PHP_FILEINFO_VERSION
#define STANDARD_MODULE_HEADER
#define STANDARD_MODULE_PROPERTIES

Definition at line 125 of file fileinfo.c.

◆ finfo_class_entry

zend_class_entry* finfo_class_entry

Definition at line 46 of file fileinfo.c.