以下代码
new Dictionary<string, List<int>> {
["a"] = {1},
};
Run Code Online (Sandbox Code Playgroud)
抛出一个运行时KeyNotFoundException,尽管{1}是一个格式完美的数组(即int[] a = {1,2,3,4}有效代码).改变TValue的Dictionary到int[],抛出一个编译时间CS1061,但这并不(注意添加new[]阵列分配):
new Dictionary<string, IEnumerable<int>> {
["a"] = new[]{1},
};
Run Code Online (Sandbox Code Playgroud)
为什么会这样?
我们正在尝试在我们的登台环境中设置并行运行的多个 PHP 版本。为了实现这一点,我构建了所有相关的 PHP 二进制文件(在适用的情况下使用 --enable-fastcgi)并使用 mod_fastcgi 通过包装脚本调用前者。
如果相关,这里是/php-fcgi/php-5.5:
#!/bin/sh
PHPRC=/usr/local/php55/etc/php.ini
export PHPRC
PHP_FCGI_MAX_REQUESTS=5000
export PHP_FCGI_MAX_REQUESTS
PHP_FCGI_CHILDREN=3
export PHP_FCGI_CHILDREN
exec /usr/local/php55/bin/php-cgi
Run Code Online (Sandbox Code Playgroud)
到目前为止一切正常(即所有配置为运行 PHP 5.5 的虚拟主机都在 5.5 上运行,等等);然而,在<Directory>块中使用“SetEnv”设置的环境变量存在问题。所有这些都以REDIRECT_.
示例:
SetEnv APPLICATION_ENV "production"
Run Code Online (Sandbox Code Playgroud)
将导致此输出:
'REDIRECT_APPLICATION_ENV' => string 'production'
Run Code Online (Sandbox Code Playgroud)
任何人都可以就我做错了什么提出建议吗?
澄清为什么这与 mod_rewrite 无关:即使完全禁用 mod_rewrite 也会发生这种行为。
我最近开始使用CodeLite,因为我虽然它会是一个很棒的软件,但是我不知道如何向项目中添加库。谁能帮我吗 ?