У меня есть этот массив месяц $ messonmnum = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10 ', '11', '12']; , и я хочу, чтобы это сравнивалось в моей столбце базы данных month_uploaded со значениями всего от 1 до 12. Я хочу, чтобы это подсчитало количество экземпляров, которые значения $ Massnum массивы встречаются в столбце month_uploaded и хранить его в массиве $ count_uploads . Расположен с нулевым значением в массиве $ count_uploads. Как бы я это сделал? Ваша помощь очень ценится. Спасибо. Ниже приведены части моих кодов.
< /p>
function count_uploads_perMonth(){
$monthsNum = ['1','2','3','4','5','6','7','8','9','10','11','12'];
$query = $this->db->select("*")
->from($this->table_par)
->where_in("month_uploaded",$monthsNum)
->get();
foreach( $query->result() as $row ){
$count_uploads[] = count($row->month_uploaded);
}
var_dump($count_uploads);
}
< /code>
Вывод: неправильно < /p>
array (size=5)
0 => int 1
1 => int 1
2 => int 1
3 => int 1
4 => int 1
< /code>
желаемый вывод: < /p>
array (size=12)
0 => 0 or null
1 => 0 or null
2 => 0 or null
3 => 0 or null
4 => 0 or null
5 => 1
6 => 3
7 => 0 or null
8 => 0 or null
9 => 0 or null
10 => 0 or null
11 => 0 or null
< /code>
Это ближе, просто нужно получить правильное значение для каждого ключа массива < /p>
function count_uploads_perMonth(){
$monthsNum = array('1','2','3','4','5','6','7','8','9','10','11','12');
$this->db->select("month_uploaded as cnt");
$this->db->where_in('month_uploaded',$monthsNum);
$this->db->group_by('month_uploaded');
$query = $this->db->get($this->table_par);
$count_uploads = array_fill(1, 12, 0);
foreach( $query->result() as $row ){
$count_uploads[$row->cnt] = $row->cnt;
}
var_dump($count_uploads);
}
< /code>
output: < /p>
array (size=12)
1 => int 0
2 => int 0
3 => int 0
4 => int 0
5 => int 0
6 => string '6' (length=1) --- value should be 1 and length is 1
7 => string '7' (length=1) --- value should be 4 and length is 4
8 => int 0
9 => int 0
10 => int 0
11 => int 0
12 => int 0
Подробнее здесь: https://stackoverflow.com/questions/315 ... he-databas
Сравните данные в массиве и подсчитайте количество экземпляров, которые они встречаются в базе данных, используя codeign ⇐ Php
Кемеровские программисты php общаются здесь
1739782374
Anonymous
У меня есть этот массив месяц $ messonmnum = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10 ', '11', '12']; , и я хочу, чтобы это сравнивалось в моей столбце базы данных [b] month_uploaded [/b] со значениями всего от 1 до 12. Я хочу, чтобы это подсчитало количество экземпляров, которые значения [b] $ Massnum [/b] массивы встречаются в столбце [b] month_uploaded [/b] и хранить его в массиве [b] $ count_uploads [/b]. Расположен с нулевым значением в массиве $ count_uploads. Как бы я это сделал? Ваша помощь очень ценится. Спасибо. Ниже приведены части моих кодов.
< /p>
function count_uploads_perMonth(){
$monthsNum = ['1','2','3','4','5','6','7','8','9','10','11','12'];
$query = $this->db->select("*")
->from($this->table_par)
->where_in("month_uploaded",$monthsNum)
->get();
foreach( $query->result() as $row ){
$count_uploads[] = count($row->month_uploaded);
}
var_dump($count_uploads);
}
< /code>
Вывод: неправильно < /p>
array (size=5)
0 => int 1
1 => int 1
2 => int 1
3 => int 1
4 => int 1
< /code>
желаемый вывод: < /p>
array (size=12)
0 => 0 or null
1 => 0 or null
2 => 0 or null
3 => 0 or null
4 => 0 or null
5 => 1
6 => 3
7 => 0 or null
8 => 0 or null
9 => 0 or null
10 => 0 or null
11 => 0 or null
< /code>
Это ближе, просто нужно получить правильное значение для каждого ключа массива < /p>
function count_uploads_perMonth(){
$monthsNum = array('1','2','3','4','5','6','7','8','9','10','11','12');
$this->db->select("month_uploaded as cnt");
$this->db->where_in('month_uploaded',$monthsNum);
$this->db->group_by('month_uploaded');
$query = $this->db->get($this->table_par);
$count_uploads = array_fill(1, 12, 0);
foreach( $query->result() as $row ){
$count_uploads[$row->cnt] = $row->cnt;
}
var_dump($count_uploads);
}
< /code>
output: < /p>
array (size=12)
1 => int 0
2 => int 0
3 => int 0
4 => int 0
5 => int 0
6 => string '6' (length=1) --- value should be 1 and length is 1
7 => string '7' (length=1) --- value should be 4 and length is 4
8 => int 0
9 => int 0
10 => int 0
11 => int 0
12 => int 0
Подробнее здесь: [url]https://stackoverflow.com/questions/31512107/compare-data-in-array-and-count-the-number-of-instances-it-occurs-in-the-databas[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия