Я хочу сохранить файл dBase на FTP-сервере прямо из памяти.Я использую следующий упрощенный фрагмент.Файл dBase также хранится на сервере - но он пуст.
Что я сделал не так?
Есть ли способ сделать это, не сохранив сначала файл локально, а затем передав егочерез ftp?
$ftp_conn = ftp_connect($ftpserver);
ftp_login($ftp_conn, $user, $password);
ftp_chdir($ftp_conn, $destination);
$memstream = fopen('php://memory', 'r+');
if ($myClass->create($memstream)) { // my function around dbase_create()
$numRecords = count($myData);
if ($numRecords) {
$myClass->open(); // my function around dbase_open()
foreach ($myData as $myRec) {
$myClass->addRecord($myRec); // my function around dbase_add_record()
}
$myClass->close(); // my function around dbase_close()
/** the following lines are for debugging
* they are delivering correct data -
* so there is still access to the dBase file
**/
$fritzAdr->open();
print_r($fritzAdr->getRecord(1);
$fritzAdr->close();
$fritzAdr->open();
print_r($fritzAdr->getRecord($fritz->countRecords())
$fritzAdr->close();
// but the $memstream is empty!
rewind($memstream);
ftp_fput($ftp_conn, 'filename.dbf', $memstream, FTP_BINARY);
}
fclose($memstream);
ftp_close($ftp_conn);