file_unmanaged_save_data

  1. drupal
    1. 7
Versions
7 file_unmanaged_save_data($data, $destination = NULL, $replace = FILE_EXISTS_RENAME)

Save a string to the specified destination without invoking file API.

This function is identical to file_save_data() except the file will not be saved to the {file_managed} table and none of the file_* hooks will be called.

Parameters

$data A string containing the contents of the file.

$destination A string containing the destination location. This must be a stream wrapper URI. If no value is provided, a randomized name will be generated and the file is saved using Drupal's default files scheme, usually "public://".

$replace Replace behavior when the destination file already exists:

  • FILE_EXISTS_REPLACE - Replace the existing file.
  • FILE_EXISTS_RENAME - Append _{incrementing number} until the filename is unique.
  • FILE_EXISTS_ERROR - Do nothing and return FALSE.

Return value

A string with the path of the resulting file, or FALSE on error.

See also

file_save_data()

Related topics

▾ 8 functions call file_unmanaged_save_data()

drupal_build_css_cache in drupal/includes/common.inc
Aggregates and optimizes CSS files into a cache file in the files directory.
drupal_build_js_cache in drupal/includes/common.inc
Aggregates JavaScript files into a cache file in the files directory.
file_example_read_submit in examples/file_example/file_example.module
Submit handler for reading a stream wrapper.
file_example_unmanaged_write_submit in examples/file_example/file_example.module
file_save_data in drupal/includes/file.inc
Save a string to the specified destination and create a database file entry.
system_retrieve_file in drupal/modules/system/system.module
Attempts to get a file using drupal_http_request and to store it locally.
_color_save_stylesheet in drupal/modules/color/color.module
Save the rewritten stylesheet to disk.
_locale_rebuild_js in drupal/includes/locale.inc
(Re-)Creates the JavaScript translation file for a language.

Code

drupal/includes/file.inc, line 1843

<?php
function file_unmanaged_save_data($data, $destination = NULL, $replace = FILE_EXISTS_RENAME) {
  // Write the data to a temporary file.
  $temp_name = drupal_tempnam('temporary://', 'file');
  if (file_put_contents($temp_name, $data) === FALSE) {
    drupal_set_message(t('The file could not be created.'), 'error');
    return FALSE;
  }

  // Move the file to its final destination.
  return file_unmanaged_move($temp_name, $destination, $replace);
}
?>