真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

php代碼自動(dòng)轉(zhuǎn)java 轉(zhuǎn)轉(zhuǎn)php源碼

如何將PHP轉(zhuǎn)換成JAVA

先了解PHP的基本語(yǔ)言結(jié)構(gòu),然后去嘗試讀懂PHP項(xiàng)目的代碼,然后就按著代碼功能,用JAVA語(yǔ)言重寫一遍就是了,暫不知道有直接從PHP代碼轉(zhuǎn)成JAVA的工具。。。

創(chuàng)新互聯(lián)專注于大渡口企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站建設(shè),商城系統(tǒng)網(wǎng)站開發(fā)。大渡口網(wǎng)站建設(shè)公司,為大渡口等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

PHP代碼變成java代碼

php代碼沒幾行,信息量很大,翻譯成java代碼行數(shù)量比較大。僅提供思路和php代碼解釋。

---------------

?php?

$appid?=?"123"; //數(shù)組里面的值,id。

$apikey?=?"456";?//數(shù)組里面的值,為加密密鑰。

$secretKey?="789";?//數(shù)組里面的值,安全密鑰。

$timestamp?=?time();?////數(shù)組里面的值,獲得當(dāng)前時(shí)間。

//UNIX?時(shí)間戳(timestamp)是?PHP?中關(guān)于時(shí)間日期一個(gè)很重要的概念,它表示從?1970年1月1日?00:00:00?到當(dāng)前時(shí)間的秒數(shù)之和。

//echo輸出$timestamp變量值,例如輸出了1389379960

echo?$timestamp;??

//定義數(shù)組。以鍵值對(duì)方式存儲(chǔ)。

//'appid'?'apikey'?'secretkey'?'timestamp'是key,鍵。

//$appid?$apikey,?$secretKey?$timestamp是value,值。

$params?=?array('appid'=$appid,?'apikey'=$apikey,?'secretkey'=$secretKey,?'timestamp'=$timestamp);

//對(duì)數(shù)組鍵值進(jìn)行升序排序。排序結(jié)果為apikey?appid?secretkey?timestamp

ksort($params);

//拼接數(shù)組中的參數(shù),并且用encoded編碼。

//http_build_query?--?生成?url-encoded?之后的請(qǐng)求字符串。當(dāng)數(shù)組沒有寫下標(biāo)時(shí),就會(huì)用第二個(gè)參數(shù)結(jié)合當(dāng)前默認(rèn)下標(biāo)當(dāng)前綴。

//$param_uri變量值,結(jié)果為apikey=456appid=123secretkey=789×tamp=1389379498

$param_uri?=?http_build_query($params,'','');

echo?$param_uri;???//echo輸出結(jié)果為apikey=456appid=123secretkey=789×tamp=1389379498

//先使用調(diào)用hash_hmac方法加密,HMAC-SHA1算法。

//$secretKey為安全密鑰,$param_uri為要加密的明文。'sha1'是HMAC-SHA1算法。

//再調(diào)用base64_encode方法加密,base64_encode?使用?MIME?base64?對(duì)數(shù)據(jù)進(jìn)行編碼。

$sig?=?base64_encode(hash_hmac('sha1',?$param_uri,?$secretKey));

?

java:

1、用hashmap存儲(chǔ)元素,鍵值對(duì)方式。

MapString,?String?hashMap?=?new?HashMapString,?String(){

{

put("appid",?"123");

put("apikey",?"456");

put("secretKey",?"789");

put("timestamp",?"當(dāng)前UNIX?時(shí)間戳,秒數(shù),java中獲取");

}????????????

};

2、java中可以通過(guò)Timestamp獲得UNIX?時(shí)間戳。

3、然后對(duì)hashmap進(jìn)行升序排序。

4、然后寫一個(gè)方法遍歷hashmap,拼接成字符串格式為apikey=456appid=123secretkey=789timestamp=1389379498

然后對(duì)該字符串進(jìn)行encoded編碼,輸出格式為apikey=456appid=123secretkey=789×tamp=1389379498

5、通過(guò)java中HMAC-SHA1算法加密該字符串,$secretKey為安全密鑰。

6、再通過(guò)base64_encode加密第5步產(chǎn)生的字符串。這是最終sig結(jié)果。

請(qǐng)把一小段PHP代碼換成一段的JAVA代碼~非常感謝

你這不好單獨(dú)翻??調(diào)用到太多其它方法了 , 打注釋的地方根據(jù)php函數(shù)的功能 改成java的就行了

private?static?boolean?check_password_db(String?nickname,String?password){

String?pwd=mysql_query("select?password?from?users?where?username="+nickname+"");?//mysql_query

String?sha_info;

if(mysql_num_rows(pwd)==1){???//mysql_num_rows(pwd)??php的函數(shù)

String?password_info=mysql_fetch_array(pwd);?//mysql_fetch_array(pwd);?

sha_info=explode("$",password_info[0]);?//explode("$",password_info[0]);

}else{

return?false;

}

if(sha_info[1]=="SHA"){

String?salf=sha_info[2];

String?sha256_password=hash("sha256",password);?//hash();

sha256_password+=sha_info[2];

if(strcasecmp(trim(sha_info[3]),hash("sha256",sha256_password))==0){?//strcasecmp

return?true;

}else{

return?false;

}

}

}

PHP代碼轉(zhuǎn)為java代碼

沒法轉(zhuǎn)的,這個(gè)php中調(diào)用了不少外部對(duì)象,沒人能猜到那些是什么內(nèi)容的。

怎么把php AES128的代碼轉(zhuǎn)成java

public?class?SimpleCrypto?{?

public?static?String?encrypt(String?seed,?String?cleartext)?throws?Exception?{?

byte[]?rawKey?=?getRawKey(seed.getBytes());?

byte[]?result?=?encrypt(rawKey,?cleartext.getBytes());?

return?toHex(result);?

}?

public?static?String?decrypt(String?seed,?String?encrypted)?throws?Exception?{?

byte[]?rawKey?=?getRawKey(seed.getBytes());?

byte[]?enc?=?toByte(encrypted);?

byte[]?result?=?decrypt(rawKey,?enc);?

return?new?String(result);?

}?

private?static?byte[]?getRawKey(byte[]?seed)?throws?Exception?{?

KeyGenerator?kgen?=?KeyGenerator.getInstance("AES");?

SecureRandom?sr?=?SecureRandom.getInstance("SHA1PRNG");?

sr.setSeed(seed);?

kgen.init(128,?sr);?//?192?and?256?bits?may?not?be?available?

SecretKey?skey?=?kgen.generateKey();?

byte[]?raw?=?skey.getEncoded();?

return?raw;?

}?

private?static?byte[]?encrypt(byte[]?raw,?byte[]?clear)?throws?Exception?{?

SecretKeySpec?skeySpec?=?new?SecretKeySpec(raw,?"AES");?

Cipher?cipher?=?Cipher.getInstance("AES");?

cipher.init(Cipher.ENCRYPT_MODE,?skeySpec);?

byte[]?encrypted?=?cipher.doFinal(clear);?

return?encrypted;?

}?

private?static?byte[]?decrypt(byte[]?raw,?byte[]?encrypted)?throws?Exception?{?

SecretKeySpec?skeySpec?=?new?SecretKeySpec(raw,?"AES");?

Cipher?cipher?=?Cipher.getInstance("AES");?

cipher.init(Cipher.DECRYPT_MODE,?skeySpec);?

byte[]?decrypted?=?cipher.doFinal(encrypted);?

return?decrypted;?

}?

public?static?String?toHex(String?txt)?{?

return?toHex(txt.getBytes());?

}?

public?static?String?fromHex(String?hex)?{?

return?new?String(toByte(hex));?

}?

public?static?byte[]?toByte(String?hexString)?{?

int?len?=?hexString.length()/2;?

byte[]?result?=?new?byte[len];?

for?(int?i?=?0;?i??len;?i++)?

result[i]?=?Integer.valueOf(hexString.substring(2*i,?2*i+2),?16).byteValue();?

return?result;?

}?

public?static?String?toHex(byte[]?buf)?{?

if?(buf?==?null)?

return?"";?

StringBuffer?result?=?new?StringBuffer(2*buf.length);?

for?(int?i?=?0;?i??buf.length;?i++)?{?

appendHex(result,?buf[i]);?

}?

return?result.toString();?

}?

private?final?static?String?HEX?=?"0123456789ABCDEF";?

private?static?void?appendHex(StringBuffer?sb,?byte?b)?{?

sb.append(HEX.charAt((b4)0x0f)).append(HEX.charAt(b0x0f));?

}?

}

php代碼轉(zhuǎn)java

try { MapString, String myMap= new HashMapString, String(); myMap.put("location",BNET_SOAP_URL); myMap.put("uri",BNET_SOAP_NAMESPACE); myMap.put("trace","1"); myMap.put("exceptions","1"); SoapClient bnet_client = new SoapClient(null,myMap); } catch (Exception exc) { throw new Exception(bnet_streamingno,null,exc,EXCEPTION_CONNECT_FAILURE) } 1 SoapClient方法你要自己先實(shí)現(xiàn) 2 Exception 參數(shù)要你自己再修改


分享標(biāo)題:php代碼自動(dòng)轉(zhuǎn)java 轉(zhuǎn)轉(zhuǎn)php源碼
文章位置:http://weahome.cn/article/hicehe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部