Sample code for 30+ languages & platforms
PHP ActiveX

Example: Http.DownloadAppend method

Demonstrates the DownloadAppend method.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

$success = 0;

$targetPath = 'c:/temp/qa_output/download.txt';

$http = new COM("Chilkat.Http");
$http->KeepResponseBody = 1;

// Assume the target file in the local filesystem does not yet exist.
$success = $http->DownloadAppend('https://chilkatsoft.com/testData/helloWorld.txt',$targetPath);
$statusCode = $http->LastStatus;
if ($statusCode == 0) {
    // Unable to either send the request or get the response.
    print $http->LastErrorText . "\n";
    exit;
}

// Should be 200.
print 'Response status code: ' . $statusCode . "\n";

// Examine the contents of the file.
$sb = new COM("Chilkat.StringBuilder");
$sb->LoadFile($targetPath,'utf-8');
print $sb->getAsString() . "\n";

// Output: 
// Response status code: 200
// Hello World!

// Download another text file and append to the target file.
$success = $http->DownloadAppend('https://chilkatsoft.com/testData/this_is_a_test.txt',$targetPath);
$statusCode = $http->LastStatus;
if ($statusCode == 0) {
    // Unable to either send the request or get the response.
    print $http->LastErrorText . "\n";
    exit;
}

// Should be 200.
print 'Response status code: ' . $statusCode . "\n";

// Examine the contents of the file.
$sb->LoadFile($targetPath,'utf-8');
print $sb->getAsString() . "\n";

// Output:
// Response status code: 200
// Hello World!This is a Test.

// Delete the local target file.
$fac = new COM("Chilkat.FileAccess");
$fac->FileDelete($targetPath);

// Try to download a file that does not exist:
$success = $http->DownloadAppend('https://chilkatsoft.com/testData/does_not_exist.txt',$targetPath);
$statusCode = $http->LastStatus;
if ($statusCode == 0) {
    // Unable to either send the request or get the response.
    print $http->LastErrorText . "\n";
}
else {
    // We got a response, and we already know it wasn't a 200 success response.
    // It should be a 404 not found.
    print 'Response status code: ' . $statusCode . "\n";
    // Examine the response body.
    print 'Response body:' . "\n";
    print $http->LastResponseBody . "\n";
}


?>