Size: a a a

2020 June 05

KN

Kirill Nesmeyanov in PHP
помнится было в планах JB подобное
источник

S

Serj in PHP
народ, объясните, пожалуйста, такой момент.
есть функции, которые вытягивают результат из ресурса. например, pg_fetch_row (https://www.php.net/manual/ru/function.pg-fetch-row.php)
почему получается вытягивать следующий результат в цикле while?
т.е., эта функция работает по типу каретки? я в доке не могу найти, где описан этот момент.
грубо говоря, возьмем пример из доки

while ($row = pg_fetch_row($result)) {
 echo "Автор: $row[0]  E-mail: $row[1]";
 echo "<br />\n";
}

почему $row на каждой итерации будет иметь новое значение а не первую строку? хочу докопаться до детального понимания этой вещи
источник

S

Serj in PHP
Serj
народ, объясните, пожалуйста, такой момент.
есть функции, которые вытягивают результат из ресурса. например, pg_fetch_row (https://www.php.net/manual/ru/function.pg-fetch-row.php)
почему получается вытягивать следующий результат в цикле while?
т.е., эта функция работает по типу каретки? я в доке не могу найти, где описан этот момент.
грубо говоря, возьмем пример из доки

while ($row = pg_fetch_row($result)) {
 echo "Автор: $row[0]  E-mail: $row[1]";
 echo "<br />\n";
}

почему $row на каждой итерации будет иметь новое значение а не первую строку? хочу докопаться до детального понимания этой вещи
тему можно закрывать.
под капотом таких функций, как я понял, юзаются курсоры

p.s. скорее всего не курсоры php'шные, есть внутренняя реализация, см. исходник расширения https://github.com/php/php-src/blob/master/ext/pgsql/pgsql.c#L2515 и https://github.com/php/php-src/blob/master/ext/pgsql/pgsql.c#L2579
источник

MP

Morris Perico in PHP
last commit 1y ago
источник

СБ

Сергей Буриков... in PHP
Господа коллеги, приветствую(пол года не писал ничего). Помощи не дадите немного? Вопрос мега нубский, но мои мозги что-то не могут справить на пару с гуглом. Короче делаю RestAPI, Метод возвращает список данных  в жейсоне. И оно всё хорошо, когда одна запись выбирается. А вот когда аписей две и больше, происходит коллапс - все жейсоны одно целое строка. Жейсон говорит что может обработать только одну строку. Внимание вопрос - как элеегантно разбить на несколько записей, не прибегая к стрипслэшес и стререплейсам?
источник

AS

Aleksey Samokhvalov in PHP
вам json Некорректный приходит?
источник

СБ

Сергей Буриков... in PHP
Aleksey Samokhvalov
вам json Некорректный приходит?
Верно. Точнее сам жейсон коррентный, но его разделять нужно
источник

СБ

Сергей Буриков... in PHP
4в1 на 4 записи. Щас покажу.
источник

AS

Aleksey Samokhvalov in PHP
я не понимаю как физически несколько записей в json некорректно можно упаковать, чтоб это потом было как одна запись)
источник

СБ

Сергей Буриков... in PHP
[{"ticker":"B","date_pay":"2018-11-26","amount":"0.16","date_ex":"2018-12-10"},{"ticker":"CRAI","date_pay":"2018-11-26","amount":"0.2","date_ex":"2018-12-21"},{"ticker":"CRI","date_pay":"2018-11-26","amount":"0.45","date_ex":"2018-12-14"},]
источник

СБ

Сергей Буриков... in PHP
Aleksey Samokhvalov
я не понимаю как физически несколько записей в json некорректно можно упаковать, чтоб это потом было как одна запись)
👆с одной ззаписью вот так:
{"ticker":"CRAI","date_pay":"2018-11-26","amount":"0.2","date_ex":"2018-12-21"}
источник

СБ

Сергей Буриков... in PHP
Aleksey Samokhvalov
я не понимаю как физически несколько записей в json некорректно можно упаковать, чтоб это потом было как одна запись)
А  вот что валидатор говорит на первый жейсон
источник

AS

Aleksey Samokhvalov in PHP
Ну для начала у вас некорректный json - в конце запятая не допустима. Это может просто и решить вашу проблему
источник

AS

Aleksey Samokhvalov in PHP
>>все жейсоны одно целое строка.
нет. в примере первом там массив объектов запакован, всё норм. исправьте момент, о котором я выше написал
источник

СБ

Сергей Буриков... in PHP
Aleksey Samokhvalov
Ну для начала у вас некорректный json - в конце запятая не допустима. Это может просто и решить вашу проблему
Да, она еще выше тоже не корректная. Смотри - я делаю запрос в БД в данном случае получаю 3 записи (ticker). Упаковывю всё это в жейсон (напомню что изначально это массив в из БД). Так вот когда я кодирую это в жейсон, он делает из это 3 записей 1! строку, разделяя 3 записи запятыми. Жейсон не говорит что невалидный синтаксис, а говорит что не может сразу в несколько объектов
источник

СБ

Сергей Буриков... in PHP
Она по одиельности все валидны)) Но json_encode всех их в одно пихает. Что в принципе логично.
источник

АС

Альберт Степанцев... in PHP
разговор о коде без кода - разговор для бедных
источник

АС

Альберт Степанцев... in PHP
что значит «упаковываю жейсон»?
источник

АС

Альберт Степанцев... in PHP
код показывайте
источник

СБ

Сергей Буриков... in PHP
Альберт Степанцев
код показывайте
ну энкод же, нууу. Щас на пастебин залью куски
источник