public static function MieDemoBaseUtility::createFile in Menu Item Extras 8.2
Creates Drupal file from module files directory.
Parameters
string $file_name: File name from module files directory.
string $module_path: Module path that contains files directory.
Return value
\Drupal\file\Entity\File Drupal File entity.
1 call to MieDemoBaseUtility::createFile()
- mie_demo_base_install in modules/
mie_demo_base/ mie_demo_base.install - Implements hook_install().
File
- modules/
mie_demo_base/ src/ Utility/ MieDemoBaseUtility.php, line 27
Class
- MieDemoBaseUtility
- Utility functions specific to mie_demo_base.
Namespace
Drupal\mie_demo_base\UtilityCode
public static function createFile($file_name, $module_path = 'mie_demo_base') {
$source = drupal_get_path('module', 'mie_demo_base') . '/files/' . $file_name;
$destination = PublicStream::basePath();
/** @var \Drupal\Core\File\FileSystemInterface $file_system */
$file_system = \Drupal::service('file_system');
try {
$file_system
->copy($source, $destination, FileSystemInterface::EXISTS_RENAME);
} catch (\Exception $e) {
}
$demo_image_uri = 'public://' . $file_name;
/** @var \Drupal\file\FileInterface $file */
$demo_image = File::create([
'uri' => $demo_image_uri,
'status' => FILE_STATUS_PERMANENT,
]);
$demo_image
->save();
return $demo_image;
}