Что нового

Присвоение значения переменной из массива

Dk

Новичок
Сообщения
358
Репутация
2
Очень сложно было сформулировать название. Если что заранее извиняюсь.
У меня следующая проблема

Ищу значение (массив) получаю его, потом оно используется дальше.
Когда онa не былa найденa, я пытаюсь указать значение по умолчанию например "11111111"

У меня не выходит... я понимаю, что нужно как то создать массив записать...
Помогите пожалуйста.

Как мне присвоить своё занчение этой переменной $aShop[0] , если она не была найдена?

Так ошибка выходит
Код:
........ $aShop = StringRegExp(BinaryToString(InetRead($sSite, 1), 4), "seller=(\w+)", 3)
     If @error Then
	$aShop[0]= 1111111
endif
	 if $aShop[0] = $nSHOP or  $aShop[0]= $SHOP4 or  $aShop[0]= $Studie or  $aShop[0]= $rShop  ....
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Просто измените условие и работайте в этом блоке
Код:
$aShop = StringRegExp(BinaryToString(InetRead($sSite, 1), 4), "seller=(\w+)", 3)
If Not @error Then
  If $aShop[0] = $nSHOP or $aShop[0] = $SHOP4 or $aShop[0] = $Studie or $aShop[0] = $rShop Then
    ; ...
    ConsoleWrite("Условие верно" & @CRLF)
    ; ...
  EndIf
EndIf
 
Автор
D

Dk

Новичок
Сообщения
358
Репутация
2
InnI

Как мне присвоить своё занчение этой переменной $aShop[0] , если она не была найдена?
Как мне сказать что-бы $aShop[0] был по умолчанию (когда ошибка - не найден) например 'Aaaaaaa'. В Вашем примере. если ошибка, то он просто пропустит.

Alofa Зачем Вы удалили свой пример, я не успел его посмотреть
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Dk [?]
Как мне присвоить своё занчение этой переменной $aShop[0] , если она не была найдена?
Код:
Dim $sSite, $nSHOP, $SHOP4, $Studie, $rShop

$aShop = StringRegExp(BinaryToString(InetRead($sSite, 1), 4), "seller=(\w+)", 3)
If @error Then Dim $aShop[] = [1111111]
ConsoleWrite($aShop[0] & @CRLF) ; отладка
If $aShop[0] = $nSHOP or $aShop[0] = $SHOP4 or $aShop[0] = $Studie or $aShop[0] = $rShop Then ConsoleWrite("Условие верно" & @CRLF)


В Вашем примере. если ошибка, то он просто пропустит.
Верно. Если же вам нужно в дальнейшем работать с этой переменной, то проверьте её на массив
Код:
If IsArray($aShop) Then ; ошибки не было

If Not IsArray($aShop) Then ; ошибка была
 
Автор
D

Dk

Новичок
Сообщения
358
Репутация
2
Inni

Спасибо, работает. Как раз этого мне и не хватало :smile: $aShop[] = [1111111]
 
Верх