Are there any best practices for securely handling FTP credentials in PHP scripts, especially when dealing with anonymous access?

When dealing with FTP credentials in PHP scripts, especially when handling anonymous access, it is important to securely store and handle the credentials to prevent unauthorized access to the FTP server. One best practice is to store the credentials in a separate configuration file outside of the web root directory and include it in your PHP script using require_once or include_once. This helps to prevent the credentials from being exposed in case of a security breach.

// config.php
define('FTP_HOST', 'ftp.example.com');
define('FTP_USER', 'anonymous');
define('FTP_PASS', 'anonymous@example.com');

// script.php
require_once('config.php');

$ftp_connection = ftp_connect(FTP_HOST);
$login = ftp_login($ftp_connection, FTP_USER, FTP_PASS);

if(!$ftp_connection || !$login) {
    die('FTP connection failed');
}

// Continue with FTP operations