ФорумПрограммированиеPHP для идиотов → Непонятная хуйня со строками

Непонятная хуйня со строками

  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz Сен. 19, 2016, 9:49 д.п.

    Возникла странная проблема при проверке строковой переменной.
    Передаю строку типа $text = "huyhuyhuy"; в функцию, там стоит проверка if (isset($data['Page']))...
    Ясен хуй, никакого объекта нет, так как я передаю строку, но он почему-то входит в это условие.
    Дебажу вошедшую переменную:

    var_dump($data);
    var_dump($data['Page']);

    И в ответ получаю примерно такое:

    string(15) "huyhuyhuy" // длинна больше реальной
    string(1) "h"

    Что за магия? Где я пропустил ступень развития пехепе?
    На локалке стоит OpenServer, на нем PHP-6.6-x64 - такой проблемы не возникало. На ремоуте что стоит, без понятия.

    Высокоуровневое абстрактное говно
  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz Сен. 19, 2016, 9:56 д.п., спустя 7 минут 35 секунд

    У меня пехепе 5.5. Опечатался, а править больше не могу.

    Высокоуровневое абстрактное говно
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Сен. 19, 2016, 4:17 п.п., спустя 6 часов 20 минут 33 секунды

    @technobulka, это нормальное поведение пхп, вот смотри

    Screenshot “Monosnap 2016-09-19 15-15-36.png” [take.ms]

    Поэтому я и забросил пхп, ведь это уебанство логическое :)

    Если ты ищещшь оффсет в строке он его к инту пытается привести, а там похуй что было строка или что угодно - если при приведение не удалось то инт = 0, и просто варнинг кидает мол ты уебан

    Screenshot “Monosnap 2016-09-19 15-16-35.png” [take.ms]

    Сапожник без сапог
  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz Сен. 19, 2016, 4:31 п.п., спустя 13 минут 51 секунду

    Если ты ищещшь оффсет в строке он его к инту пытается привести

    @phpdude, я так и понял. Пиздец. Ну я там поставил is_arary и хуй с ним, работает.

    Высокоуровневое абстрактное говно
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Сен. 19, 2016, 4:37 п.п., спустя 5 минут 55 секунд

    @technobulka, ну да должно быть is_array. Убогий пхп

    Сапожник без сапог
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz Сен. 21, 2016, 9:36 п.п., спустя 2 дня 4 часа 59 минут

    Убогий пхп

    как-будто на питоне нельзя накосячить.
    в пхп надо знать про неявный тайпкастинг и то, что байт из строки и элемени из массива имеют одинаковый синтаксис, хотя строка это нихуя не массив!

    Спустя 118 сек.

    string(15) "huyhuyhuy" // длинна больше реальной

    @technobulka, длина в вардампе это число байт, а не букв. в случае utf-8 за пределами таблицы ascii, эти цифры могут не совпадать.

    Спустя 168 сек.

    вообще плохо начинать прогать с языков с неявным типизированием, ящитаю. особенно плохо начинать с пары JS+PHP ))) два высера, каждый со своим странным видением мира.

    ιιlllιlllι унц-унц
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Сен. 21, 2016, 10:02 п.п., спустя 26 минут 10 секунд

    как-будто на питоне нельзя накосячить.
    в пхп надо знать про неявный тайпкастинг и то, что байт из строки и элемени из массива имеют одинаковый синтаксис, хотя строка это нихуя не массив!

    @artoodetoo, так не получится

    Сапожник без сапог
  • Crank

    Сообщения: 542 Репутация: N Группа: Джедаи

    Spritz Сен. 25, 2016, 10:49 д.п., спустя 3 дня 12 часов 47 минут

    как-будто на питоне нельзя накосячить.

    @artoodetoo, можно, но там не нужно каждый ебучий if начинать с isset, empty и громоздить вложенные проверки гадая удалось ли избежать логический нежданчик.

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Сен. 25, 2016, 3:19 п.п., спустя 4 часа 29 минут 27 секунд

    как-будто на питоне нельзя накосячить.

    @artoodetoo, можно, но там не нужно каждый ебучий if начинать с isset, empty и громоздить вложенные проверки гадая удалось ли избежать логический нежданчик.

    @Crank, Siiii :)

    • мажик методы дают много в руки разработчику
    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!