Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
11 / 5 / 0
Регистрация: 18.11.2012
Сообщений: 114

Обычная строка или массив из цифр

28.03.2014, 14:45. Показов 1109. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Друзья, помогите пожалуйста написать обычный массив из цифр. Вот что есть

PHP
1
2
3
4
while($item=mysql_fetch_array($result1))
    {   
        $item['id'];    
    }
данный цикл из базы выводит айди тех предметов которые надо. На выходе я хочу получить строку которая будет выглядить так:

20, 40, 157, 84

Потом у меня есть еще один аналогичный цикл, который также должен сделать строку из цифр.

И на третьем этапе мне уже надо создать из этих двух строк одну строку (или массив), такой что бы он не повторялся. Тоесть цифры из одной строки дополнить другими цифрами з второй.

Задача для начального уровня программирования но к сожалению мне трудно в ней разобраться( с этими массивами и строками не получается пока работать( Помогите пожалуйста.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.03.2014, 14:45
Ответы с готовыми решениями:

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

Может ли значением указателя быть обычная переменная или строка?
Всем привет!Вот пример кода: int main(int argc, char* argv) { char * i; i="ffffff"; cout<<i <<endl; ...

Обычная строка в начале ini файла
Как то надо организовать header line в ini файле. типа : header var=10 QSettings такого функционала вроде не...

9
3 / 3 / 2
Регистрация: 29.10.2013
Сообщений: 230
28.03.2014, 14:54
PHP
1
SELECT id FROM table WHERE id='20, 40,157,84'
не уверен но помоему так
0
 Аватар для amadey18
92 / 92 / 51
Регистрация: 29.04.2013
Сообщений: 361
28.03.2014, 15:00
PHP
1
2
3
4
5
6
$arr;
while($item=mysql_fetch_array($result1))
    {   
        $arr[] = $item['id'];    
    }
var_dump($arr);
0
11 / 5 / 0
Регистрация: 18.11.2012
Сообщений: 114
28.03.2014, 15:06  [ТС]
вопрос не к запросу в базу данных. забудьте за это вообще. вопрос в другом цикл выводит поочередно из базы данный айди предметов. мне нужно все эти айди собрать в строку или в массив я не знаю что лучше и как. и также собрать такой второй массив и потом обььеденить их в новый третий массив без повторов айди.

за запросы забудьте я знаю как их делать

Добавлено через 37 секунд
сейчас проверю ваш вариант))

Добавлено через 5 минут
Вот что я получаю на экране

PHP
1
array(1) { [0]=> string(4) "33, " } Array
Вот текущий код

PHP
1
2
3
4
5
6
7
8
9
10
$rString2;
    
    $result3 = mysql_query("SELECT * FROM arec_subcats_items_rec WHERE MATCH (description, ingridients) AGAINST ('".$request2."')");
    while($items=mysql_fetch_array($result3))
    {   
        $rString2[] = $items['id'].", ";
    }
    var_dump($rString2);
    
    echo $rString2;
я бы все же хотел получить бы массив по типу 3 5 160 45 87
0
3 / 3 / 2
Регистрация: 29.10.2013
Сообщений: 230
28.03.2014, 15:10
попробуй через while и printf
0
 Аватар для amadey18
92 / 92 / 51
Регистрация: 29.04.2013
Сообщений: 361
28.03.2014, 15:18
Цитата Сообщение от OgStyle Посмотреть сообщение
$rString2[] = $items['id'].", ";
уберите конкатенацию

Добавлено через 4 минуты
хотя погодите, скиньте что выводится из базы
PHP
1
2
3
4
while($items=mysql_fetch_array($result3))
    {   
        echo $items['id'].", ";
    }
0
11 / 5 / 0
Регистрация: 18.11.2012
Сообщений: 114
28.03.2014, 15:23  [ТС]
Вообщем смотрите. Вот что у меня получилось. Сделал по другому.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
    while($item=mysql_fetch_array($result1))
    {   
        $aID1[] = $item['id'];  
    }
    
    $result3 = mysql_query("SELECT * FROM arec_subcats_items_rec WHERE MATCH (description, ingridients) AGAINST ('".$request2."')");
    while($items=mysql_fetch_array($result3))
    {   
        $aID2[] = $items['id'];
    }
    
    $aRequest = array_unique(array_merge($aID1, $aID2));
    echo implode(", ", $aRequest);
Впринципе все работает, на экране получаю:

PHP
1
1, 77, 41, 70, 87, 69, 84, 103, 42, 66, 24, 73, 86, 76, 16, 17, 110, 67, 82
НО помогите теперь решить вот какую проблему. Если во втором или в первом или в обох циклах из базы данных ничего не нашли, то естественно я получаю ошибки такого типа как :
PHP
1
2
3
4
5
Warning: array_merge() [function.array-merge]: Argument #1 is not an array in /home/p154949/public_html/search-rec.php on line 23
 
Warning: array_unique() expects parameter 1 to be array, null given in /home/p154949/public_html/search-rec.php on line 23
 
Warning: implode() [function.implode]: Invalid arguments passed in /home/p154949/public_html/search-rec.php on line 24
Вопрос как их избежать?? Тоесть надо как то предусмотреть если массивы пустые что бы ничего не делалось
0
 Аватар для amadey18
92 / 92 / 51
Регистрация: 29.04.2013
Сообщений: 361
28.03.2014, 15:30
Цитата Сообщение от amadey18 Посмотреть сообщение
хотя погодите, скиньте что выводится из базы
Код PHP
1
2
3
4
while($items=mysql_fetch_array($result3) )
{
echo $items['id'].", ";
}
сделайте то что я вам написал
Цитата Сообщение от OgStyle Посмотреть сообщение
while($item=mysql_fetch_array($result1)) { $aID1[] = $item['id']; } $result3 = mysql_query("SELECT * FROM arec_subcats_items_rec WHERE MATCH (description, ingridients) AGAINST ('".$request2."')"); while($items=mysql_fetch_array($result3) ) { $aID2[] = $items['id']; } $aRequest = array_unique(array_merge($aID1, $aID2)); echo implode(", ", $aRequest);
лучше так не надо... нет... серьезно.... не надо.

Добавлено через 1 минуту
нужно сделать по другому, и не нужно будет решать этих ошибок.
0
11 / 5 / 0
Регистрация: 18.11.2012
Сообщений: 114
28.03.2014, 15:54  [ТС]
В том случае что вы просите он не правильный так как там стоит .", "; типо конкатенация. Выводит обычное число, ничего не разделяет запятыми, что то типо 157 вот так
0
 Аватар для amadey18
92 / 92 / 51
Регистрация: 29.04.2013
Сообщений: 361
28.03.2014, 16:12
обычный пример на цикле
PHP
1
2
3
4
5
6
7
8
9
10
11
12
for($i = 0; $i < 10; $i++)
{
    echo $i.", ";
}
//0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 
// а что выводит у вас? там не может быть ошибки, 
//разве что неправильный формат вывода, что вообще должно быть в $items  на выходе?
while($items=mysql_fetch_array($result3))
{
// тогда так, просто хочу узнать что внутри, вслепую я не смогу помочь.
var_dump($items);
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.03.2014, 16:12
Помогаю со студенческими работами здесь

Заданная строка, состоящая из цифр разделенных одним или несколькими пробелами
Заданная строка, состоящая из цифр разделенных одним или несколькими пробелами. Получить представление каждого числа в виде...

Дана строка. Выяснить, чего в нем больше: русских букв или цифр
Здравствуйте, буду очень благодарна если поможете)))) :) 1) Дана строка. Удалить из строки все слова, имеющие менее 5 букв. 2) Дана...

Мультиагентная система или обычная программа
Чем конкретно отличаются эти вещи ?

Дана строка, содержащая произвольный текст. Выяснить, чего в нем больше: русских букв или цифр
Дана строка, содержащая произвольный текст. Выяснить, чего в нем больше: русских букв или цифр.

Подскажите на счёт выбора клавиатуры(Обычная или универсальная)
Вообщем такая ситуация, купил уже беспроводную мышь в прошлом году, устраивает полностью, решил подобрать беспроводную клавиатуру. Вначале...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru