Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String Lua中字符串比较失败_String_Lua_String Comparison - Fatal编程技术网

String Lua中字符串比较失败

String Lua中字符串比较失败,string,lua,string-comparison,String,Lua,String Comparison,我正在尝试为LuCI(OpenWrt使用的web界面)做一个小的扩展。然而,这个问题非常笼统,与lua的关系比其他任何问题都要大 我有以下代码: for k, v in ipairs(nixio.getifaddrs()) do if v.family == "packet" then s = s .. ifname .. "=" .. v.name .. '?' if iface == v.name then s = s .. "

我正在尝试为LuCI(OpenWrt使用的web界面)做一个小的扩展。然而,这个问题非常笼统,与lua的关系比其他任何问题都要大

我有以下代码:

for k, v in ipairs(nixio.getifaddrs()) do
    if v.family == "packet" then
        s = s .. ifname .. "=" .. v.name .. '?'
        if iface == v.name then
            s = s .. "T\t"
            match = 1
            break
        else
            s = s .. "F\t"
        end
    end
end
每次我运行(
ifname=“lo”
,但它在任何情况下都会失败,
s
字符串打印如下:

lo=lo?F lo=eth0?F   lo=eth1?F   lo=br-lan?F lo=wlan1?F  lo=wlan0?F  
我已经对它进行了一些调试,但是我仍然不明白为什么字符串比较在这种情况下不起作用。我不是lua方面的专家,所以可能是我遗漏了一些明显的东西。有人能看看是什么吗

    s = s .. ifname .. "=" .. v.name .. '?'
    if iface == v.name then

您在比较中使用的是
iface
,而不是
ifname
。如果一个变量以前没有给定值,那么它的值是
nil
,但没有给出错误,因为它是合法的Lua。

承认这有点尴尬,但我已经研究了一段时间,但没有成功。非常感谢您指出这个愚蠢的错误:)