4. März 2015

PHP:
file_put_contents() via FTP mit ftp_file_put_contents()

Mit dieser Funktion lässt sich ein PHP-String als Datei via FTP-Verbindung sichern:

<?php

function ftp_file_put_contents($remote_file, $file_string)
{
	// FTP-Zugangsdaten
	$ftp_server="mein-ftp-server.de"; 
	$ftp_user_name="mein-benutzername"; 
	$ftp_user_pass="mein-passwort";

	// Temporäre Datei aus dem Filestring erstellen
	$local_file=fopen('php://temp', 'r+');
	fwrite($local_file, $file_string);
	rewind($local_file);       

	// FTP-Verbindung aufbauen
	$ftp_conn=ftp_connect($ftp_server); 

	// FTP-Login
	@$login_result=ftp_login($ftp_conn, $ftp_user_name, $ftp_user_pass); 

	// FTP-Upload
	if($login_result) $upload_result=ftp_fput($ftp_conn, $remote_file, $local_file, FTP_ASCII);

	// Fehlerprüfung
	if(!$login_result or !$upload_result)
	{
		echo('FTP-Fehler: Datei konnte nicht geschrieben werden.');
	}

	// FTP-Verbindung beenden
	ftp_close($ftp_conn);

	// Datei-Handle Temporäre-Datei schließen
	fclose($local_file);
}

// Aufruf
ftp_file_put_contents('meine-datei.txt', 'Dieser Inhalt wird in die Textdatei geschrieben.');