Sample code for 30+ languages & platforms
PHP Extension Requires Chilkat v11.0.0+

Example: Email.GetDsnInfo method

See more Email Object Examples

Demonstrates how to call the GetDsnInfo method.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

$email = new CkEmail();

$success = $email->LoadEml('qa_data/eml/sample_multipart_report.eml');
if ($success == false) {
    print $email->lastErrorText() . "\n";
    exit;
}

$json = new CkJsonObject();
$success = $email->GetDsnInfo($json);
if ($success == false) {
    print $email->lastErrorText() . "\n";
    exit;
}

$json->put_EmitCompact(false);
print $json->emit() . "\n";

//  Sample output:

//  {
//    "reporting-mta": "dns; Exchange2016.example.com",
//    "final-recipient": [
//      "herb.butterworth1247692846@gmail.com"
//    ],
//    "action": "failed",
//    "status": "5.1.1",
//    "remote-mta": "dns; mx.google.com",
//    "x-supplementary-info": "<mx.google.com #5.1.1 smtp;550-5.1.1 The email account that you tried to reach does not exist. Please try 550-5.1.1 double-checking the recipient's email address for typos or 550-5.1.1 unnecessary spaces. Learn more at 550 5.1.1  https://support.google.com/mail/?p=NoSuchUser o8-20020a056870968800b001b55816bea9si2188132oaq.70 - gsmtp>",
//    "x-display-name": "herb.butterworth1247692846@gmail.com"
//  }

//  Code for parsing the JSON:

$reporting_mta = $json->stringOf('reporting-mta');
$action = $json->stringOf('action');
$status = $json->stringOf('status');
$remote_mta = $json->stringOf('remote-mta');
$x_supplementary_info = $json->stringOf('x-supplementary-info');
$x_display_name = $json->stringOf('x-display-name');
$i = 0;
$count = $json->SizeOfArray('final-recipient');
while ($i < $count) {
    $json->put_I($i);
    $strVal = $json->stringOf('final-recipient[i]');
    $i = $i + 1;
}


?>