Sample code for 30+ languages & platforms
PHP Extension

FTP Upload / Download to a BinData Object

Demonstrates how to FTP upload the contents of a BinData object, and FTP downloads to the a BinData object.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

// This example assumes Chilkat Ftp2 to have been previously unlocked.
// See Unlock Ftp2 for sample code.

$ftp = new CkFtp2();

$ftp->put_Hostname('www.my-ftp-server.com');
$ftp->put_Username('mFtpLogin');
$ftp->put_Password('myFtpPassword');

// Connect to the FTP server.
$success = $ftp->ConnectOnly();
if ($success != true) {
    print $ftp->lastErrorText() . "\n";
    exit;
}

// Authenticate with the FTP server.
$success = $ftp->LoginAfterConnectOnly();
if ($success != true) {
    print $ftp->lastErrorText() . "\n";
    exit;
}

$bdA = new CkBinData();
$bdA->LoadFile('qa_data/jpg/penguins.jpg');

// Upload the contents of bdA to the FTP server.
$remoteFilename = 'penguins.jpg';
$success = $ftp->PutFileBd($bdA,$remoteFilename);
if ($success != true) {
    print $ftp->lastErrorText() . "\n";
    exit;
}

// Download...
$bdB = new CkBinData();
$success = $ftp->GetFileBd($remoteFilename,$bdB);
if ($success != true) {
    print $ftp->lastErrorText() . "\n";
    exit;
}

// Verify that bdA and bdB have the exact same contents.
print 'size of bdA: ' . $bdA->get_NumBytes() . "\n";
if ($bdA->ContentsEqual($bdB) == true) {
    print 'Contents are equal. Success.' . "\n";
}
else {
    print 'Contents are NOT equal.  Failed.' . "\n";
}

$ftp->Disconnect();

?>