php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
spl_directory.c File Reference

Go to the source code of this file.

Data Structures

struct  spl_filesystem_iterator
 

Macros

#define SPL_HAS_FLAG(flags, test_flag)
 
#define CHECK_SPL_FILE_OBJECT_IS_INITIALIZED(spl_filesystem_object_pointer)
 
#define CHECK_DIRECTORY_ITERATOR_IS_INITIALIZED(intern)
 
#define IS_SLASH_AT(zs, pos)
 
#define DIT_CTOR_FLAGS   0x00000001
 
#define DIT_CTOR_GLOB   0x00000002
 
#define FileInfoFunction(func_name, func_num)
 

Functions

PHPAPI zend_stringspl_filesystem_object_get_path (const spl_filesystem_object *intern)
 
 PHP_METHOD (DirectoryIterator, __construct)
 
 PHP_METHOD (DirectoryIterator, rewind)
 
 PHP_METHOD (DirectoryIterator, key)
 
 PHP_METHOD (DirectoryIterator, current)
 
 PHP_METHOD (DirectoryIterator, next)
 
 PHP_METHOD (DirectoryIterator, seek)
 
 PHP_METHOD (DirectoryIterator, valid)
 
 PHP_METHOD (SplFileInfo, getPath)
 
 PHP_METHOD (SplFileInfo, getFilename)
 
 PHP_METHOD (DirectoryIterator, getFilename)
 
 PHP_METHOD (SplFileInfo, getExtension)
 
 PHP_METHOD (DirectoryIterator, getExtension)
 
 PHP_METHOD (SplFileInfo, getBasename)
 
 PHP_METHOD (DirectoryIterator, getBasename)
 
 PHP_METHOD (SplFileInfo, getPathname)
 
 PHP_METHOD (FilesystemIterator, key)
 
 PHP_METHOD (FilesystemIterator, current)
 
 PHP_METHOD (DirectoryIterator, isDot)
 
 PHP_METHOD (SplFileInfo, __construct)
 
 FileInfoFunction (getPerms, FS_PERMS)
 
 PHP_METHOD (SplFileInfo, getRealPath)
 
 PHP_METHOD (SplFileInfo, openFile)
 
 PHP_METHOD (SplFileInfo, setFileClass)
 
 PHP_METHOD (SplFileInfo, setInfoClass)
 
 PHP_METHOD (SplFileInfo, getFileInfo)
 
 PHP_METHOD (SplFileInfo, getPathInfo)
 
 PHP_METHOD (SplFileInfo, __debugInfo)
 
 PHP_METHOD (SplFileInfo, _bad_state_ex)
 
 PHP_METHOD (FilesystemIterator, __construct)
 
 PHP_METHOD (FilesystemIterator, rewind)
 
 PHP_METHOD (FilesystemIterator, getFlags)
 
 PHP_METHOD (FilesystemIterator, setFlags)
 
 PHP_METHOD (RecursiveDirectoryIterator, hasChildren)
 
 PHP_METHOD (RecursiveDirectoryIterator, getChildren)
 
 PHP_METHOD (RecursiveDirectoryIterator, getSubPath)
 
 PHP_METHOD (RecursiveDirectoryIterator, getSubPathname)
 
 PHP_METHOD (RecursiveDirectoryIterator, __construct)
 
 PHP_METHOD (SplFileObject, __construct)
 
 PHP_METHOD (SplTempFileObject, __construct)
 
 PHP_METHOD (SplFileObject, rewind)
 
 PHP_METHOD (SplFileObject, eof)
 
 PHP_METHOD (SplFileObject, valid)
 
 PHP_METHOD (SplFileObject, fgets)
 
 PHP_METHOD (SplFileObject, current)
 
 PHP_METHOD (SplFileObject, key)
 
 PHP_METHOD (SplFileObject, next)
 
 PHP_METHOD (SplFileObject, setFlags)
 
 PHP_METHOD (SplFileObject, getFlags)
 
 PHP_METHOD (SplFileObject, setMaxLineLen)
 
 PHP_METHOD (SplFileObject, getMaxLineLen)
 
 PHP_METHOD (SplFileObject, hasChildren)
 
 PHP_METHOD (SplFileObject, getChildren)
 
 PHP_METHOD (SplFileObject, fgetcsv)
 
 PHP_METHOD (SplFileObject, fputcsv)
 
 PHP_METHOD (SplFileObject, setCsvControl)
 
 PHP_METHOD (SplFileObject, getCsvControl)
 
 PHP_METHOD (SplFileObject, flock)
 
 PHP_METHOD (SplFileObject, fflush)
 
 PHP_METHOD (SplFileObject, ftell)
 
 PHP_METHOD (SplFileObject, fseek)
 
 PHP_METHOD (SplFileObject, fgetc)
 
 PHP_METHOD (SplFileObject, fpassthru)
 
 PHP_METHOD (SplFileObject, fscanf)
 
 PHP_METHOD (SplFileObject, fwrite)
 
 PHP_METHOD (SplFileObject, fread)
 
 PHP_METHOD (SplFileObject, fstat)
 
 PHP_METHOD (SplFileObject, ftruncate)
 
 PHP_METHOD (SplFileObject, seek)
 
 PHP_METHOD (SplFileObject, __toString)
 
 PHP_MINIT_FUNCTION (spl_directory)
 

Variables

PHPAPI zend_class_entryspl_ce_SplFileInfo
 
PHPAPI zend_class_entryspl_ce_DirectoryIterator
 
PHPAPI zend_class_entryspl_ce_FilesystemIterator
 
PHPAPI zend_class_entryspl_ce_RecursiveDirectoryIterator
 
PHPAPI zend_class_entryspl_ce_GlobIterator
 
PHPAPI zend_class_entryspl_ce_SplFileObject
 
PHPAPI zend_class_entryspl_ce_SplTempFileObject
 

Macro Definition Documentation

◆ CHECK_DIRECTORY_ITERATOR_IS_INITIALIZED

#define CHECK_DIRECTORY_ITERATOR_IS_INITIALIZED ( intern)
Value:
if (!(intern)->u.dir.dirp) { \
zend_throw_error(NULL, "Object not initialized"); \
RETURN_THROWS(); \
}
uint32_t u
Definition cdf.c:78
#define NULL
Definition gdcache.h:45

Definition at line 87 of file spl_directory.c.

◆ CHECK_SPL_FILE_OBJECT_IS_INITIALIZED

#define CHECK_SPL_FILE_OBJECT_IS_INITIALIZED ( spl_filesystem_object_pointer)
Value:
if (!(spl_filesystem_object_pointer)->u.file.stream) { \
zend_throw_error(NULL, "Object not initialized"); \
RETURN_THROWS(); \
}

Definition at line 81 of file spl_directory.c.

◆ DIT_CTOR_FLAGS

#define DIT_CTOR_FLAGS   0x00000001

Definition at line 687 of file spl_directory.c.

◆ DIT_CTOR_GLOB

#define DIT_CTOR_GLOB   0x00000002

Definition at line 688 of file spl_directory.c.

◆ FileInfoFunction

#define FileInfoFunction ( func_name,
func_num )
Value:
{ \
spl_filesystem_object *intern = spl_filesystem_from_obj(Z_OBJ_P(ZEND_THIS)); \
zend_error_handling error_handling; \
RETURN_THROWS(); \
} \
if (spl_filesystem_object_get_file_name(intern) == FAILURE) { \
RETURN_THROWS(); \
} \
zend_replace_error_handling(EH_THROW, spl_ce_RuntimeException, &error_handling);\
php_stat(intern->file_name, func_num, return_value); \
zend_restore_error_handling(&error_handling); \
}
#define PHP_METHOD
Definition php.h:365
const char * func_name
struct _spl_filesystem_object spl_filesystem_object
PHPAPI zend_class_entry * spl_ce_RuntimeException
zend_string * file_name
@ EH_THROW
Definition zend.h:433
#define zend_parse_parameters_none()
Definition zend_API.h:353
#define ZEND_THIS
Definition zend_API.h:523
#define Z_OBJ_P(zval_p)
Definition zend_types.h:990
@ FAILURE
Definition zend_types.h:61
zval * return_value

Definition at line 1146 of file spl_directory.c.

◆ IS_SLASH_AT

#define IS_SLASH_AT ( zs,
pos )
Value:
(IS_SLASH(zs[pos]))
unsigned const char * pos
Definition php_ffi.h:52
#define IS_SLASH(c)

Definition at line 282 of file spl_directory.c.

◆ SPL_HAS_FLAG

#define SPL_HAS_FLAG ( flags,
test_flag )
Value:
((flags & test_flag) ? 1 : 0)

Definition at line 37 of file spl_directory.c.

Function Documentation

◆ FileInfoFunction()

FileInfoFunction ( getPerms ,
FS_PERMS  )

Definition at line 1164 of file spl_directory.c.

◆ PHP_METHOD() [1/68]

PHP_METHOD ( DirectoryIterator ,
__construct  )

Definition at line 740 of file spl_directory.c.

◆ PHP_METHOD() [2/68]

PHP_METHOD ( DirectoryIterator ,
current  )

Definition at line 777 of file spl_directory.c.

◆ PHP_METHOD() [3/68]

PHP_METHOD ( DirectoryIterator ,
getBasename  )

Definition at line 1029 of file spl_directory.c.

◆ PHP_METHOD() [4/68]

PHP_METHOD ( DirectoryIterator ,
getExtension  )

Definition at line 966 of file spl_directory.c.

◆ PHP_METHOD() [5/68]

PHP_METHOD ( DirectoryIterator ,
getFilename  )

Definition at line 904 of file spl_directory.c.

◆ PHP_METHOD() [6/68]

PHP_METHOD ( DirectoryIterator ,
isDot  )

Definition at line 1111 of file spl_directory.c.

◆ PHP_METHOD() [7/68]

PHP_METHOD ( DirectoryIterator ,
key  )

Definition at line 763 of file spl_directory.c.

◆ PHP_METHOD() [8/68]

PHP_METHOD ( DirectoryIterator ,
next  )

Definition at line 789 of file spl_directory.c.

◆ PHP_METHOD() [9/68]

PHP_METHOD ( DirectoryIterator ,
rewind  )

Definition at line 747 of file spl_directory.c.

◆ PHP_METHOD() [10/68]

PHP_METHOD ( DirectoryIterator ,
seek  )

Definition at line 811 of file spl_directory.c.

◆ PHP_METHOD() [11/68]

PHP_METHOD ( DirectoryIterator ,
valid  )

Definition at line 841 of file spl_directory.c.

◆ PHP_METHOD() [12/68]

PHP_METHOD ( FilesystemIterator ,
__construct  )

Definition at line 1408 of file spl_directory.c.

◆ PHP_METHOD() [13/68]

PHP_METHOD ( FilesystemIterator ,
current  )

Definition at line 1086 of file spl_directory.c.

◆ PHP_METHOD() [14/68]

PHP_METHOD ( FilesystemIterator ,
getFlags  )

Definition at line 1435 of file spl_directory.c.

◆ PHP_METHOD() [15/68]

PHP_METHOD ( FilesystemIterator ,
key  )

Definition at line 1066 of file spl_directory.c.

◆ PHP_METHOD() [16/68]

PHP_METHOD ( FilesystemIterator ,
rewind  )

Definition at line 1415 of file spl_directory.c.

◆ PHP_METHOD() [17/68]

PHP_METHOD ( FilesystemIterator ,
setFlags  )

Definition at line 1447 of file spl_directory.c.

◆ PHP_METHOD() [18/68]

PHP_METHOD ( RecursiveDirectoryIterator ,
__construct  )

Definition at line 1579 of file spl_directory.c.

◆ PHP_METHOD() [19/68]

PHP_METHOD ( RecursiveDirectoryIterator ,
getChildren  )

Definition at line 1499 of file spl_directory.c.

◆ PHP_METHOD() [20/68]

PHP_METHOD ( RecursiveDirectoryIterator ,
getSubPath  )

Definition at line 1544 of file spl_directory.c.

◆ PHP_METHOD() [21/68]

PHP_METHOD ( RecursiveDirectoryIterator ,
getSubPathname  )

Definition at line 1561 of file spl_directory.c.

◆ PHP_METHOD() [22/68]

PHP_METHOD ( RecursiveDirectoryIterator ,
hasChildren  )

Definition at line 1461 of file spl_directory.c.

◆ PHP_METHOD() [23/68]

PHP_METHOD ( SplFileInfo ,
__construct  )

Definition at line 1128 of file spl_directory.c.

◆ PHP_METHOD() [24/68]

PHP_METHOD ( SplFileInfo ,
__debugInfo  )

Definition at line 1387 of file spl_directory.c.

◆ PHP_METHOD() [25/68]

PHP_METHOD ( SplFileInfo ,
_bad_state_ex  )

Definition at line 1397 of file spl_directory.c.

◆ PHP_METHOD() [26/68]

PHP_METHOD ( SplFileInfo ,
getBasename  )

Definition at line 993 of file spl_directory.c.

◆ PHP_METHOD() [27/68]

PHP_METHOD ( SplFileInfo ,
getExtension  )

Definition at line 918 of file spl_directory.c.

◆ PHP_METHOD() [28/68]

PHP_METHOD ( SplFileInfo ,
getFileInfo  )

Definition at line 1345 of file spl_directory.c.

◆ PHP_METHOD() [29/68]

PHP_METHOD ( SplFileInfo ,
getFilename  )

Definition at line 874 of file spl_directory.c.

◆ PHP_METHOD() [30/68]

PHP_METHOD ( SplFileInfo ,
getPath  )

Definition at line 855 of file spl_directory.c.

◆ PHP_METHOD() [31/68]

PHP_METHOD ( SplFileInfo ,
getPathInfo  )

Definition at line 1359 of file spl_directory.c.

◆ PHP_METHOD() [32/68]

PHP_METHOD ( SplFileInfo ,
getPathname  )

Definition at line 1048 of file spl_directory.c.

◆ PHP_METHOD() [33/68]

PHP_METHOD ( SplFileInfo ,
getRealPath  )

Definition at line 1271 of file spl_directory.c.

◆ PHP_METHOD() [34/68]

PHP_METHOD ( SplFileInfo ,
openFile  )

Definition at line 1308 of file spl_directory.c.

◆ PHP_METHOD() [35/68]

PHP_METHOD ( SplFileInfo ,
setFileClass  )

Definition at line 1317 of file spl_directory.c.

◆ PHP_METHOD() [36/68]

PHP_METHOD ( SplFileInfo ,
setInfoClass  )

Definition at line 1331 of file spl_directory.c.

◆ PHP_METHOD() [37/68]

PHP_METHOD ( SplFileObject ,
__construct  )

Definition at line 2025 of file spl_directory.c.

◆ PHP_METHOD() [38/68]

PHP_METHOD ( SplFileObject ,
__toString  )

Definition at line 2734 of file spl_directory.c.

◆ PHP_METHOD() [39/68]

PHP_METHOD ( SplFileObject ,
current  )

Definition at line 2174 of file spl_directory.c.

◆ PHP_METHOD() [40/68]

PHP_METHOD ( SplFileObject ,
eof  )

Definition at line 2125 of file spl_directory.c.

◆ PHP_METHOD() [41/68]

PHP_METHOD ( SplFileObject ,
fflush  )

Definition at line 2489 of file spl_directory.c.

◆ PHP_METHOD() [42/68]

PHP_METHOD ( SplFileObject ,
fgetc  )

Definition at line 2540 of file spl_directory.c.

◆ PHP_METHOD() [43/68]

PHP_METHOD ( SplFileObject ,
fgetcsv  )

Definition at line 2319 of file spl_directory.c.

◆ PHP_METHOD() [44/68]

PHP_METHOD ( SplFileObject ,
fgets  )

Definition at line 2157 of file spl_directory.c.

◆ PHP_METHOD() [45/68]

PHP_METHOD ( SplFileObject ,
flock  )

Definition at line 2472 of file spl_directory.c.

◆ PHP_METHOD() [46/68]

PHP_METHOD ( SplFileObject ,
fpassthru  )

Definition at line 2565 of file spl_directory.c.

◆ PHP_METHOD() [47/68]

PHP_METHOD ( SplFileObject ,
fputcsv  )

Definition at line 2359 of file spl_directory.c.

◆ PHP_METHOD() [48/68]

PHP_METHOD ( SplFileObject ,
fread  )

Definition at line 2639 of file spl_directory.c.

◆ PHP_METHOD() [49/68]

PHP_METHOD ( SplFileObject ,
fscanf  )

Definition at line 2579 of file spl_directory.c.

◆ PHP_METHOD() [50/68]

PHP_METHOD ( SplFileObject ,
fseek  )

Definition at line 2524 of file spl_directory.c.

◆ PHP_METHOD() [51/68]

PHP_METHOD ( SplFileObject ,
fstat  )

Definition at line 2664 of file spl_directory.c.

◆ PHP_METHOD() [52/68]

PHP_METHOD ( SplFileObject ,
ftell  )

Definition at line 2503 of file spl_directory.c.

◆ PHP_METHOD() [53/68]

PHP_METHOD ( SplFileObject ,
ftruncate  )

Definition at line 2679 of file spl_directory.c.

◆ PHP_METHOD() [54/68]

PHP_METHOD ( SplFileObject ,
fwrite  )

Definition at line 2606 of file spl_directory.c.

◆ PHP_METHOD() [55/68]

PHP_METHOD ( SplFileObject ,
getChildren  )

Definition at line 2293 of file spl_directory.c.

◆ PHP_METHOD() [56/68]

PHP_METHOD ( SplFileObject ,
getCsvControl  )

Definition at line 2443 of file spl_directory.c.

◆ PHP_METHOD() [57/68]

PHP_METHOD ( SplFileObject ,
getFlags  )

Definition at line 2240 of file spl_directory.c.

◆ PHP_METHOD() [58/68]

PHP_METHOD ( SplFileObject ,
getMaxLineLen  )

Definition at line 2271 of file spl_directory.c.

◆ PHP_METHOD() [59/68]

PHP_METHOD ( SplFileObject ,
hasChildren  )

Definition at line 2283 of file spl_directory.c.

◆ PHP_METHOD() [60/68]

PHP_METHOD ( SplFileObject ,
key  )

Definition at line 2198 of file spl_directory.c.

◆ PHP_METHOD() [61/68]

PHP_METHOD ( SplFileObject ,
next  )

Definition at line 2214 of file spl_directory.c.

◆ PHP_METHOD() [62/68]

PHP_METHOD ( SplFileObject ,
rewind  )

Definition at line 2113 of file spl_directory.c.

◆ PHP_METHOD() [63/68]

PHP_METHOD ( SplFileObject ,
seek  )

Definition at line 2705 of file spl_directory.c.

◆ PHP_METHOD() [64/68]

PHP_METHOD ( SplFileObject ,
setCsvControl  )

Definition at line 2402 of file spl_directory.c.

◆ PHP_METHOD() [65/68]

PHP_METHOD ( SplFileObject ,
setFlags  )

Definition at line 2230 of file spl_directory.c.

◆ PHP_METHOD() [66/68]

PHP_METHOD ( SplFileObject ,
setMaxLineLen  )

Definition at line 2252 of file spl_directory.c.

◆ PHP_METHOD() [67/68]

PHP_METHOD ( SplFileObject ,
valid  )

Definition at line 2139 of file spl_directory.c.

◆ PHP_METHOD() [68/68]

PHP_METHOD ( SplTempFileObject ,
__construct  )

Definition at line 2076 of file spl_directory.c.

◆ PHP_MINIT_FUNCTION()

PHP_MINIT_FUNCTION ( spl_directory )

Definition at line 2756 of file spl_directory.c.

◆ spl_filesystem_object_get_path()

PHPAPI zend_string * spl_filesystem_object_get_path ( const spl_filesystem_object * intern)

Definition at line 212 of file spl_directory.c.

Variable Documentation

◆ spl_ce_DirectoryIterator

PHPAPI zend_class_entry* spl_ce_DirectoryIterator

Definition at line 46 of file spl_directory.c.

◆ spl_ce_FilesystemIterator

PHPAPI zend_class_entry* spl_ce_FilesystemIterator

Definition at line 47 of file spl_directory.c.

◆ spl_ce_GlobIterator

PHPAPI zend_class_entry* spl_ce_GlobIterator

Definition at line 49 of file spl_directory.c.

◆ spl_ce_RecursiveDirectoryIterator

PHPAPI zend_class_entry* spl_ce_RecursiveDirectoryIterator

Definition at line 48 of file spl_directory.c.

◆ spl_ce_SplFileInfo

PHPAPI zend_class_entry* spl_ce_SplFileInfo

Definition at line 45 of file spl_directory.c.

◆ spl_ce_SplFileObject

PHPAPI zend_class_entry* spl_ce_SplFileObject

Definition at line 50 of file spl_directory.c.

◆ spl_ce_SplTempFileObject

PHPAPI zend_class_entry* spl_ce_SplTempFileObject

Definition at line 51 of file spl_directory.c.