Author Topic: Каким образом возникает эта ошибка?  (Read 2001 times)

0 Members and 1 Guest are viewing this topic.

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Каким образом возникает эта ошибка?
« on: September 26, 2020, 02:41:29 PM »
Ребят, каким образом в этом скрипте:
Code: (clickermann) [Select]
getfilelist($ar_bmp, STRCONCAT("variables\",$name,"_*_ReloadScript.bmp"))
IF(arrsize($ar_bmp) > 0)
   strseparate($ar_bmp[0], "_", $nr)
   $reload_script = $nr[1]
   UNDEFINE ($nr)
END_IF
UNDEFINE ($ar_bmp)
возникает ошибка итерпритации строки - $reload_script = $nr[1]?
Я не ду... Потому и не бу...

4.У.В.@.К

  • Активный участник
  • ***
  • Posts: 117
    • View Profile
Re: Каким образом возникает эта ошибка?
« Reply #1 on: September 26, 2020, 03:52:30 PM »
Так получается при попытке обратиться к несуществующей ячейке массива.

Code: (clickermann) [Select]
strseparate($ar_bmp[0], "_", $nr) // разбиваем строку $ar_bmp[0] на подстроки, в массив "$nr"

LOGWRITE (ARRSIZE($nr)) // размер массива "$nr" (в логе: 1)

Ячейки $nr[1] не существует.
В общем надо смотреть что находится в строке $ar_bmp[0], и есть ли в ней подстрока "_".

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Каким образом возникает эта ошибка?
« Reply #2 on: September 26, 2020, 07:51:24 PM »
Так получается при попытке обратиться к несуществующей ячейке массива.

Code: (clickermann) [Select]
strseparate($ar_bmp[0], "_", $nr) // разбиваем строку $ar_bmp[0] на подстроки, в массив "$nr"

LOGWRITE (ARRSIZE($nr)) // размер массива "$nr" (в логе: 1)

Ячейки $nr[1] не существует.
В общем надо смотреть что находится в строке $ar_bmp[0], и есть ли в ней подстрока "_".
Посмотри на скрипт. Я ж его не просто так выложил, а чтобы все видно было. Там условие - IF(arrsize($ar_bmp) > 0), значит файл STRCONCAT("variables\",$name,"_*_ReloadScript.bmp") был найден. Разбиваем его на подстроки по "_" и в итоге имеем $nr[0], $nr[1] и даже $nr[2], так как по условию, как минимум, в названии два "_" имеется.
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Каким образом возникает эта ошибка?
« Reply #3 on: September 26, 2020, 08:12:24 PM »
А вообще там, либо файл под названием "M1_0_ReloadScript.bmp", либо "M1_1_ReloadScript.bmp". Ну, цифра в "M1" может быть от 1 до 15. То есть, может быть, например "M15_1_ReloadScript.bmp".
Я не ду... Потому и не бу...