C# 是否有与PHP函数“parse#u str”等价的C语言?
是否存在与C# 是否有与PHP函数“parse#u str”等价的C语言?,c#,php,parsing,C#,Php,Parsing,是否存在与PHP函数parse\u str等效的C 我找不到任何东西并编写了自己的函数,但是C#框架中有什么东西吗 public Dictionary<string, string> parse_str(string query) { Dictionary<string, string> data = new Dictionary<string, string>(); foreach(string set in query.Trim('?'
PHP
函数parse\u str
等效的C
我找不到任何东西并编写了自己的函数,但是C#
框架中有什么东西吗
public Dictionary<string, string> parse_str(string query) {
Dictionary<string, string> data = new Dictionary<string, string>();
foreach(string set in query.Trim('?').Split('&'))
data.Add(set.Split('=')[0], set.Split('=').Length < 2 ? "" : set.Split('=')[1]);
return data;
}
公共字典解析(字符串查询){
字典数据=新字典();
foreach(在query.Trim('?').Split('&')中设置的字符串)
data.Add(set.Split('=')[0],set.Split('=')。长度<2?”:set.Split('=')[1]);
返回数据;
}
我认为您支持如果您是从浏览器的查询字符串中获取它,您可以使用Request.QueryString
您可以获得所有密钥的列表:Request.QueryString.keys
获取一个键的值:
Request.QueryString[“KeyName”]
我知道。为什么PHP的手册比C#的更容易浏览和发现?谢谢谷歌是通用搜索工具中的C#手册/MS文档——你只需要知道搜索什么,这并不总是那么容易。它有助于添加一个site:msdn.microsoft.com
子句,让您可以使用谷歌搜索术语不幸的是NameValueCollection
没有JavaScriptSerializer()。像字典一样序列化。将NameValueCollection
转换为Dictionary
的唯一方法似乎是一个for循环,它使我的parse_str
函数更相关。用于web开发的C#Request.querystring
来检索它并将其传递到HttpUtility.ParseQueryString()
。你能解释一下这是如何无关的吗?它涵盖了95%的用例,比任何替代方案都要好得多,尽管它的功能与所要求的不完全相同。对于一个站点来说,解析“自身”以外的页面的查询字符串是很少见的。你能查一下问题中提到的内容并解释一下你的答案的相关性吗?@iambriansreed C#不是php。你不可能总是为每件事找到一个精确的端口。你应该问的不是“什么样的C代码与这个PHP代码做的事情相同”,而是“我如何用C完成这个任务?”。如果答案恰好相同,那就这样吧。@Servy比我解释得更好地解释了我回答的原因。