Я пытаюсь сравнить две переменные, в которых обычно есть строки. Эти переменные генерируются из базы данных, $var1
из одной базы данных и $var2
из другой.
Когда я сравниваю их в цикле, я использую оператор ne
. Однако бывают случаи, когда эти переменные равны null
или undef
. Сравнение выполняется следующим образом:
foreach my $var1 (@$varlist)
{
if ($var1 ne $var2)
{
print "vars are not equal";
}
}
Проблема в том, что если $var1
или $var2
равны undef
, то я получаю сообщение об ошибке. Однако мне нужно иметь возможность сравнивать значения, так как undef b/c мне придется их писать. Я подумал о преобразовании переменных в строку «NULL», а затем обратно, но это показалось неэффективным.
Как это исправить? Спасибо!