PHP代码转换成C#,关于PHP字符串转换为ASCII的问题

nishizhen 2010-05-17 10:59:02
$coded .= substr($str, $i, $keylength) ^ $key

* @key string
* @coded string


一段简单的代码,就是很不明白这个异或的时候是对两个字符串做计算,看PHP文档说是把字符串转换成ASCII码后进行的计算。

但是我进行对字符串转换为ASCII的处理,
/// <summary>
/// 获取ASC码
/// </summary>
/// <param name="Data"></param>
/// <returns></returns>
private static int ASC(String Data)
{
byte[] b = System.Text.Encoding.Default.GetBytes(Data);
string p = "";
for (int i = 0; i < b.Length; i++)
{
p += (int)b[i];
}

return int.Parse(p);
}


但是,这个方法根本就不行,很少的字符串都会返回一个超出int值范围的数字。。。(很大很大)


我想知道PHP里面的字符串转换成ASCII是怎么一个过程? 和结果。
...全文
168 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
nishizhen 2010-05-17
  • 打赏
  • 举报
回复
我的问题说的也是字符串啊
nishizhen 2010-05-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xuzuning 的回复:]
不是!

你没有注意到我写的是“字符”而不是“字符串”吗?
[/Quote]

对啊,所以才问你啊。。。

你没有注意到我写的是字符串吗?
xuzuning 2010-05-17
  • 打赏
  • 举报
回复
不是!

你没有注意到我写的是“字符”而不是“字符串”吗?

nishizhen 2010-05-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 xuzuning 的回复:]
$coded .= substr($str, $i, $keylength) ^ $key
对字符做异或操作,一般用于加密


ord 取得字符内码 ord('a') ==> 97
chr 转换数值为字符内码 chr(97) ==> a

$coded .= substr($str, $i, $keylength) ^ $key
内部动作为:
$coded .= chr( ord……
[/Quote]

问个问题,这个
ord( ‘abcd’ )的结果是 979899100 这样的一个int值吗?
xuzuning 2010-05-17
  • 打赏
  • 举报
回复
$coded .= substr($str, $i, $keylength) ^ $key
对字符做异或操作,一般用于加密


ord 取得字符内码 ord('a') ==> 97
chr 转换数值为字符内码 chr(97) ==> a

$coded .= substr($str, $i, $keylength) ^ $key
内部动作为:
$coded .= chr( ord( substr($str, $i, $keylength) ) ^ $key )
nishizhen 2010-05-17
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 foolbirdflyfirst 的回复:]
假设 "abc" ^ "s" 则相当于

PHP code
chr(ord("a") ^ ord("s"))
,bc忽略不计

假设 "abc" ^ "sos" 则相当于

PHP code
chr(ord("a") ^ ord("s")) . chr(ord("b") ^ ord("o")) . chr(ord("c") ^ ord("s"))


明白了吗?
[/Quote]

非常感谢,明白了~

非常感谢~

我去试试看~
foolbirdflyfirst 2010-05-17
  • 打赏
  • 举报
回复
假设 "abc" ^ "s" 则相当于
chr(ord("a") ^ ord("s"))
,bc忽略不计

假设 "abc" ^ "sos" 则相当于
chr(ord("a") ^ ord("s")) . chr(ord("b") ^ ord("o")) . chr(ord("c") ^ ord("s"))


明白了吗?
nishizhen 2010-05-17
  • 打赏
  • 举报
回复
谢谢大家,有没有知道的?

或者觉得我的问题有问题,请指出,谢谢。

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧