Fal::deleteForModel() 

\nn\t3::Fal()->deleteForModel($model, $field = NULL); 

Deletes the physical files for a model (or a single field of the field of the model) from the server.

// Delete ALL files of the entire model
\nn\t3::Fal()->deleteForModel( $model );

// Delete ALL files from the "images" field
\nn\t3::Fal()->deleteForModel( $model, 'images' );
Copied!
@param \TYPO3\CMS\Extbase\DomainObject\AbstractEntity $model
@param string $field
@return void

Source Code 

public function deleteForModel ( $model, $field = null )
{
	$tableName = \nn\t3::Obj()->getTableName( $model );
	$modelUid = $model->getUid();
	if (!$tableName || !$modelUid) return;
	$fileReferences = \nn\t3::Db()->findByValues('sys_file_reference', [
		'tablenames' 	=> $tableName,
		'uid_foreign'	=> $modelUid,
	]);
	$props = \nn\t3::Obj()->getProps( $model );
	if ($fileReferences) {
		try {
			$resourceFactory = GeneralUtility::makeInstance(ResourceFactory::class);
			foreach ($fileReferences as $row) {
				$fieldname = $row['fieldname'];
				if ($field && $fieldname !== $field) {
					continue;
				}
				if ($file = $resourceFactory->getFileObject( $row['uid_local'] )) {
					\nn\t3::Fal()->clearCache( $file );
					$file->delete();
					\nn\t3::Obj()->set( $model, $fieldname, null );
				}
			}
		} catch( \Exception $e ) {}
	}
}
Copied!