Как извлечь значение переменной из одного условия if внутри другого условия if? - PullRequest
0 голосов
/ 19 октября 2019

Здесь мой код будет выполняться за 2 итерации. Для 1-й итерации, она будет непосредственно переходить ко 2-му условию. Там после некоторых операций он напечатает значение $ vg_name как «n_vg_f». До сих пор код работает нормально. Теперь для второй итерации сначала элемент управления переходит к условию выше, если. Там при вызове функции _create () мне нужно передать аргумент -vg_name в качестве значения $ vg_name, которое мы получили в первой итерации из условия if ниже. Пожалуйста, помогите мне найти способ сделать это.

for(my $x=1;$x<=2;$x++) {
    if($x >= 2){
        $linux_host_obj->_create(-vg_name => $vg_name);
    }
    if($x >= 1){
        print("VG Name is:", $vg_name);   #Here I get $vg_name value as "n_vg_f"
    }
}

1 Ответ

0 голосов
/ 20 октября 2019

Не совсем понятно, что ты здесь пытаешься сделать. Но если вы хотите сохранить значение переменной $vg_name между итерациями цикла, вам нужно объявить переменную вне цикла.

my $vg_name;

for my $i (1 .. 2) { # this loop style is easier to follow
  if ($i == 2) {
    # do stuff with $vg_name
  }
  if ($i == 1) {
    $vg_name = 'something';
  }
  print "Iteration: $i, vg_name: $vg_name\n";
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...