public function testErrorCallbacks()
 {
     $xmlrpcClient = new HieuLe\WordpressXmlrpcClient\WordpressClient();
     $error = array();
     $xmlrpcClient->onError(function ($e, $event) use(&$error) {
         $error['e'] = $e;
         $error['event'] = $event;
     });
     try {
         $xmlrpcClient->getProfile();
     } catch (Exception $ex) {
         $this->assertArrayHasKey('e', $error);
         $this->assertArrayHasKey('event', $error);
         $this->assertArrayHasKey('endpoint', $error['event']);
         return;
     }
     $xmlrpcClient->onError(function ($e, $event) use(&$error) {
         $error['e'] = 1;
     });
     try {
         $xmlrpcClient->getProfile();
     } catch (Exception $ex) {
         $this->assertSame(1, $error['e']);
         return;
     }
     $this->fail('Error callbacks not called');
 }
<?php

require __DIR__ . '/lib/autoload.php';
# Your Wordpress website is at: http://wp-website.com
$endpoint = "http://beta.xudoanchuahienlinh.com/xmlrpc.php";
# The Monolog logger instance
$wpLog = new Monolog\Logger('wp-xmlrpc');
# Create client instance
$wpClient = new \HieuLe\WordpressXmlrpcClient\WordpressClient();
# Log error
$wpClient->onError(function ($error, $event) use($wpLog) {
    var_dump($error);
    echo "<br><br>";
    var_dump($event);
    $wpLog->addError($error, $event);
});
# Set the credentials for the next requests
$wpClient->setCredentials($endpoint, 'admin', '12345678@X');
$profile = $wpClient->getProfile(array('user_id', 'username', 'email', 'roles'));
var_dump($profile);
//foreach ($resp as $value) {
echo "<br><br>";
echo $profile["user_id"];
echo "<br><br>";
echo "Username: "******"username"];
echo "<br><br>";
echo "Display name: " . $profile["email"];
echo "<br><br>";
//    };