Jump to content

Recommended Posts

So now I have a return from an API with more than one array and I need to decode it to PHP variables again.

<?php

function cryptoxchange_query($path, array $req = array()) {
// API settings
$key = ' ';
$secret = '';

// generate a nonce as microtime, with as-string handling to avoid problems with 32bits systems
$mt = explode(' ', microtime());
$req['nonce'] = $mt[1].substr($mt[0], 2, 6);

// generate the POST data string
$post_data = http_build_query($req, '', '&');

// generate the extra headers
$headers = array(
 'cryptokey: '.$key,
 'cryptopayload: '.base64_encode(hash_hmac('sha512', $post_data, base64_decode($secret), true)),
);

// our curl handle (initialize if required)
static $ch = null;
if (is_null($ch)) {
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MtGox PHP client; '.php_uname('s').'; PHP/'.phpversion().')');
}
curl_setopt($ch, CURLOPT_URL, 'https://cryptoxchange.com/api/v0/account/balance/?stamp=$mt'.$path);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

// run the query
$res = curl_exec($ch);
if ($res === false) throw new Exception('Could not get reply: '.curl_error($ch));
$dec = json_decode($res, true);
if (!$dec) throw new Exception('Invalid data received, please make sure connection is working and requested API exists');
return $dec;
}

// example 1: get infos about the account, plus the list of rights we have access to
//var_dump(mtgox_query('0/info.php'));

// old api (get funds)
echo 'MtGox';
echo '<br/>';
var_dump(cryptoxchange_query(''));
//$values = (cryptoxchange_query(''));
//echo "USDS: ".$values['Balance'].' BTCS: '.$values['BTC'];
// trade example
// var_dump(mtgox_query('0/buyBTC.php', array('amount' => 1, 'price' => 15)));\
?>

 

Output:

 

array(5) { ["AccountNumber"]=> string(18) "xxxxxxxxxxx" ["Balance"]=> array(4) { ["USD"]=> string(11) "47.42805318" ["AUD"]=> string(10) "0.00000000" ["BTC"]=> string(10) "7.15424820" ["NMC"]=> string(10) "0.00000000" } ["ReturnCodes"]=> int(1) ["err"]=> string(0) "" ["stamp"]=> string(3) "$mt" }

 

Sorry for all the questions,

 

Than You!

Link to comment
https://forums.phpfreaks.com/topic/269285-another-var_dump-api-question/
Share on other sites

Take a look at Jessica's answer in your other thread, try to understand what it does and how it works, then apply your newfound knowledge to this var_dump output. It's exactly the same problem, just with different data this time.

What errors? We're not :psychic:

 

 

Notice: Array to string conversion in C:\xampp\htdocs\bitcoin\mtgox.php on line 100

 

Notice: Undefined index: BTC in C:\xampp\htdocs\bitcoin\mtgox.php on line 100

USDS: Array BTCS:

 

Sorrry. Im not new to PHP, but I have no idea how to do this and Google isnt helping me much like it usually does.

 

Thank You

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.