Аналог php implode, или как объединить массивы в одну строку

Статус
В этой теме нельзя размещать новые ответы.

AngelOfFear

Пользователь
Регистрация
11 Июн 2017
Сообщения
198
Симпатии
16
Пол
Мужской
Есть массив имен игроков: arr[id][name]
Задача: получить имена всех игроков в одну строку, разделенные запятыми. Должно получится "name1,name2,name3,..."

На php я бы в цикле загнал все имена в один массив, а потом implode-ом объединил бы элементы массива в одну строку. А тут как?
 

neygomon

Его Темнейшество :j
Заблокированные
Пользователь
Регистрация
8 Июн 2017
Сообщения
819
Симпатии
388
Пол
Мужской
А тут можно так:
new Len, array[256];
for(new i; i < что-то; ++i)
Len += formatex(array[Len], charsmax(array) - Len, “%s,”, arr[id][name]);
 

AngelOfFear

Пользователь
Регистрация
11 Июн 2017
Сообщения
198
Симпатии
16
Пол
Мужской
А тут можно так:
new Len, array[256];
for(new i; i < что-то; ++i)
Len += formatex(array[Len], charsmax(array) - Len, “%s,”, arr[id][name]);
Я про это думал, но тогда у нас в самом конце остаётся лишняя запятая. Мне кажется потом в "SELECT ... WHERE name IN array" из-за этой запятой выдаст ошибку.
 

paffgame

D0L64E6
Разработчик
Регистрация
9 Июн 2017
Сообщения
154
Симпатии
84
Пол
Мужской
Telegram
@paffgame
new Len, array[256];
for(new i; i < что-то; ++i)
Len += formatex(array[Len], charsmax(array) - Len, “%s%s”, i>0 ? "," : "", arr[id][name]); // 0 - начало массива


new Len, array[256], k;
for(new i; i < что-то; ++i){
Len += formatex(array[Len], charsmax(array) - Len, “%s%s”, k>0 ? "," : "", arr[id][name]);
k = 1; //Если варик выше не устраивает
}
 

AngelOfFear

Пользователь
Регистрация
11 Июн 2017
Сообщения
198
Симпатии
16
Пол
Мужской
new Len, array[256];
for(new i; i < что-то; ++i)
Len += formatex(array[Len], charsmax(array) - Len, “%s%s”, i>0 ? "," : "", arr[id][name]); // 0 - начало массива


new Len, array[256], k;
for(new i; i < что-то; ++i){
Len += formatex(array[Len], charsmax(array) - Len, “%s%s”, k>0 ? "," : "", arr[id][name]);
k = 1; //Если варик выше не устраивает
}
Я понял, запятую добавляем спереди, кроме первого элемента. Тоже выход.
Остаётся понять какой вариант лучше по нагрузке - formatex в цикле или один раз implode_strings
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу