Создаю игру, работающую с бд. Необходимо найти всех пользователей с одним именем, для этого в скрипте используется
$test = R::find('users', 'name = ?', array($n);
foreach($test as $i) {
echo $i;
}
Который выводит:
{"ID":"1", "name":"world", и т.д.} {"ID":"2", "name":"test", и т.д.}
Но результат получается как одно целое и сравнить имена не выходит. $i[0]->name даст имена сразу двух пользователей(worldtest)
Тогда как мне сравнить имена?
"найти всех пользователей с одним именем" "сравнить имена не выходит" какой-то диссонанс в задаче ... это json {"ID":"1", "name":"world", и т.д.} что с ним не понятно ? почему тут R::find('users', 'name = ?', array($n) передается массив ?
напишешь правильный запрос получишь правильный ответ
В юнити можно использовать пхп? https://ru.m.wikipedia.org/wiki/Unity_(игровой_движок) про этот же речь?
это api для игры на юнити (я так понял) в данном случае она на php
php используется в скрипте, который с бд работает
Вам надо немного изучить, что такое API, JSON и всё-таки это вопрос к сообществам пхп
Я думал написать в пхп чат, но т.к. работа с бд, решил сюда. Изучить надо бы, но эта проблема не даст мне покоя. Всё было ок что в c#, что в python. Почему здесь foreach обходит массив так, что данные становятся одним целым, я не понимаю
Вы перебирает то, что вернул метод R::find() и печатаете на экран каждое значение. Из этого примера мне ничего не понятно, к сожалению
Я ищу пользователей с одинаковыми именами(извиняюсь, что в примере они разные, моя ошибка) с помощью find. Далее я хочу их сравнить. Для того, чтобы получить значения массива, я его обхожу. В итоге, все, что я получаю после foreach, становится единым целым. Я могу использовать $i->name, который даст имена сразу всех пользователей, но не могу использовать $i[0]->name, чтобы получить имя только первого пользователя. Получается, что сравнить не могу
А почему вы думаете, что $i[0]->name даст имена сразу двух пользователей ?
Во время написания текста не имел доступа к пк, пришлось писать по памяти. А из-за большого кол-ва попыток все перемешалось в голове. $i[0]->name даёт пустоту
Ну, то есть у обращения к коллекцыям в unity (кстати, что это за язык?) просто совсем другой синтаксис. Что, кстати, крайне логично, учитывая что $i ужэ элемент, зачем у него брать и $0 и name.
Обсуждают сегодня