1
我從來沒有想過我會問這個......我需要一種方式來模仿C#中的ksort
函數。在C中模仿PHP的ksort#
這裏的問題... PHP做這個...
PHP代碼
$arr = array(
"tagValues" => "asdfasd",
"email" => "asdfasd",
"referrer" => "asdfasd",
"tags" => "asdfasd",
);
echo "Base array \n\n";
print_r($arr);
ksort($arr);
echo "\n\nksort'ed array \n\n";
print_r($arr);
PHP輸出
Base array
Array
(
[tagValues] => asdfasd
[email] => asdfasd
[referrer] => asdfasd
[tags] => asdfasd
)
ksort'ed array
Array
(
[email] => asdfasd
[referrer] => asdfasd
[tagValues] => asdfasd
[tags] => asdfasd
)
雖然如果我這樣做在C#。 ..
string[] sortedKeys = form.AllKeys.OrderBy(x => x).ToArray();
它以不同的順序出現。 tags
將在tagValues
之前,因爲它應該是。這是真正的字母順序。
據我的理解,ksort
在數組上做了一些區分大小寫的ASCII工作,這就是爲什麼它以不同的順序出現的原因。
我該如何在C#中實現?最好用LINQ。謝謝!
對於在背景故事的興趣...
基本上,我試圖創造的每FastSpring API字母順序排序輸入參數的MD5哈希值。他們的PHP片段的操作與我翻譯爲C#時的預期不同,因此散列總是不正確的。
你的gravatar讓我的思維上有SO – zerkms
完美的佈局問題,就是這樣。謝謝! – jocull