function bter_query($path, array $req = array()) {
// API settings, add your Key and Secret at here
$key = '';
$secret = '';
// generate a nonce 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, '', '&');
$sign = hash_hmac('sha512', $post_data, $secret);
// generate the extra headers
$headers = array(
'KEY: '.$key,
'SIGN: '.$sign,
//!!! please set Content-Type to application/x-www-form-urlencoded if it's not the default value
// 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; Bter PHP bot; '.php_uname('a').'; PHP/'.phpversion().')'
curl_setopt($ch, CURLOPT_URL, 'https://bter.com/api/'.$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('Curl error: '.curl_error($ch));
//echo $res;
$dec = json_decode($res, true);
if (!$dec) throw new Exception('Invalid data: '.$res);
return $dec;
function get_top_rate($pair, $type='BUY') {
$rate = 0;
// 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; Bter PHP bot; '.php_uname('a').'; PHP/'.phpversion().')'
curl_setopt($ch, CURLOPT_URL, 'https://bter.com/api/1/depth/'.$pair);
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));
//echo $res;
$dec = json_decode($res, true);
if (!$dec) throw new Exception('Invalid data: '.$res);
if (strtoupper($type) == 'BUY') {
$r = $dec['bids'][0];
$rate = $r[0];
} else {
$r = end($dec['asks']);
$rate = $r[0];
return $rate;
try {
// example 1: get funds
var_dump(bter_query('1/private/getfunds'));
// example 2: place a buy order
$pair = 'ltc_btc';
$type = 'buy';
$rate = get_top_rate($pair, $type) * 1.01;
var_dump(bter_query('1/private/placeorder',
array(
'pair' => "$pair",
'type' => "$type",
'rate' => "$rate",
'amount' => '0.01',
// example 3: cancel an order
var_dump(bter_query('1/private/cancelorder', array('order_id' => 125811)));
// example 4: get order status
var_dump(bter_query('1/private/getorder', array('order_id' => 15088)));
//example 5: list all open orders
var_dump(bter_query('1/private/orderlist'));
} catch (Exception $e) {
echo "Error:".$e->getMessage();
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉
本文系统来源:php中文网
function bter_query($path, array $req = array()) {// API settings, add your Key and Secret at here$key = '';$secret = '';// generate a nonce to avoid problems with 32bits systems$mt = explode(' ', mic...
如果你想将
PHP
代码
转
换成
Java
代码
,你需要找到一个能够完成这个任务的
转
换工具。不过要注意,这种
转
换并不是完全自动化的过程,所以你可能需要手动调整
转
换后的
Java
代码
,使其能够正常工作。还有一点要注意的是,
PHP
和
Java
是两种不同的编程语言,它们之间的差异很大,所以在
转
换过程中可能会有一些不可避免的限制和困难。希望这些信息对你有帮助。
服务端开发中,有很多知识是相通的,例如mysql,redis,http协议等。
基于这些基础,在编程语言上的
转
变并不困难。
本文主要从下面几点出发,讲述如何快速从
php
开发
转
为
java
开发:
使用框架构建web项目 - 10min
常用数据结构对应和概念
转
变 - 5min
操作Mysql数据库和发送http请求 - 15min
使用框架构建项目
先看下
PHP
和
JAVA
对应的项目工具和框架:
tesla(特斯拉)服务化框架?一听就很高大上,有木有?
tesla是啥?简单来说,tesla之于蘑菇街就好比dubbo之于阿里,当然tesla和dubbo很相似,比如解决的问题域等,但是差异也有不少,比如支持异构系统等。不然我们也就直接借用dubbo,没必要耗费这么多人力物力来重复造轮子。
为啥要tesla服务化框架呢?蘑菇街主站的
代码
是基于
public static String encryptMD5_Salt(String content) {
String resultString = "";
String appkey = "acdf,kef";
byte[] a = appkey.getBytes();
byte[] datSource = content...