wp_tempnam( string $filename = '', string $dir = '' )
Returns a filename of a Temporary unique file.
Description Description
Please note that the calling function must unlink() this itself.
The filename is based off the passed parameter or defaults to the current unix timestamp, while the directory can either be passed as well, or by leaving it blank, default to a writable temporary directory.
Parameters Parameters
- $filename
-
(string) (Optional) Filename to base the Unique file off.
Default value: ''
- $dir
-
(string) (Optional) Directory to store the file in.
Default value: ''
Return Return
(string) a writable filename
Source Source
File: wp-admin/includes/file.php
624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 | function wp_tempnam( $filename = '' , $dir = '' ) { if ( empty ( $dir ) ) { $dir = get_temp_dir(); } if ( empty ( $filename ) || '.' == $filename || '/' == $filename || '\\' == $filename ) { $filename = uniqid(); } // Use the basename of the given file without the extension as the name for the temporary directory $temp_filename = basename ( $filename ); $temp_filename = preg_replace( '|\.[^.]*$|' , '' , $temp_filename ); // If the folder is falsey, use its parent directory name instead. if ( ! $temp_filename ) { return wp_tempnam( dirname( $filename ), $dir ); } // Suffix some random data to avoid filename conflicts $temp_filename .= '-' . wp_generate_password( 6, false ); $temp_filename .= '.tmp' ; $temp_filename = $dir . wp_unique_filename( $dir , $temp_filename ); $fp = @ fopen ( $temp_filename , 'x' ); if ( ! $fp && is_writable ( $dir ) && file_exists ( $temp_filename ) ) { return wp_tempnam( $filename , $dir ); } if ( $fp ) { fclose( $fp ); } return $temp_filename ; } |
Expand full source code Collapse full source code View on Trac
Changelog Changelog
Version | Description |
---|---|
2.6.0 | Introduced. |