What are best practices for handling file paths and directories in PHP when using ftp_put for uploads?

When using ftp_put for uploading files in PHP, it is important to handle file paths and directories properly to ensure the files are uploaded to the correct location. One best practice is to use absolute file paths when specifying the file to upload, as relative paths may not work consistently across different environments. Additionally, make sure to handle directory separators appropriately based on the operating system being used.

// Example of handling file paths and directories for ftp_put upload
$localFile = '/path/to/local/file.txt';
$remoteFile = '/path/to/remote/file.txt';

// Connect to FTP server
$ftpServer = 'ftp.example.com';
$ftpUser = 'username';
$ftpPass = 'password';
$ftpConn = ftp_connect($ftpServer);
ftp_login($ftpConn, $ftpUser, $ftpPass);

// Set passive mode
ftp_pasv($ftpConn, true);

// Upload file
if (ftp_put($ftpConn, $remoteFile, $localFile, FTP_BINARY)) {
    echo "File uploaded successfully.";
} else {
    echo "Error uploading file.";
}

// Close FTP connection
ftp_close($ftpConn);