PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (2): [1] 2 »
Найдено сообщений: 17
Alexey_php
Отправлено: 12 Июля, 2017 - 11:19:32 • Тема: Разделитель тысячных с обрезкой нулей • Форум: Вопросы новичков
Ответов: 13 Просмотров: 518
Функция в функции это тот минимум который оптимально справляется с обрезкой нулей
я думаю rtrim и number_format будут работать быстрее чем регулярные выражение в цикле
Спасибо за примеры
Alexey_php
Отправлено: 11 Июля, 2017 - 14:25:26 • Тема: Разделитель тысячных с обрезкой нулей • Форум: Вопросы новичков
Ответов: 13 Просмотров: 518
teleoperator27
И в итоге из данных ["12345","12345.000","12345.500","12345.560","12345.567","12345.050"]
используя функцию number_format($row['num'], 1, ',', ' ');
я получу вот такой вывод
12 345,0
12 345,0
12 345,5
12 345,6
12 345,6
12 345,1
а как получить вот такой вид
12 345
12 345
12 345,5
12 345,56
12 345,567
12 345,05
Alexey_php
Отправлено: 11 Июля, 2017 - 13:05:33 • Тема: Разделитель тысячных с обрезкой нулей • Форум: Вопросы новичков
Ответов: 13 Просмотров: 518
teleoperator27 хорошо я вас понял
1: Данные хоронятся в mysql в поле num c типом json (данные есть как целые так и дробные)
2: Цикл while все эти данные выводит
Как получить формат данных представленный ниже
12 345
12 345
12 345.5
12 345.56
12 345.567
12 345.05
Я могу использовать типизацию переменной типа echo (float)$row['num'];
В итоге я получу
12345
12345
12345.5
12345.56
12345.567
12345.05
А как теперь разбить на тысячные чтобы не было нулей
Alexey_php
Отправлено: 11 Июля, 2017 - 12:17:55 • Тема: Разделитель тысячных с обрезкой нулей • Форум: Вопросы новичков
Ответов: 13 Просмотров: 518
Я не до конца выразил мысль.
Имелось в виду что в цикле while есть Значения переменных из которых нужно
получить Результат обработки
Значения переменных
$int_1 = 12345;
$int_2 = 12345.500;
$int_3 = 12345.560;
$int_4 = 12345.567;
Результат обработки
$int_1 = 12 345;
$int_2 = 12 345,5;
$int_3 = 12 345,56;
$int_4 = 12 345,567;
Alexey_php
Отправлено: 10 Июля, 2017 - 13:23:16 • Тема: Разделитель тысячных с обрезкой нулей • Форум: Вопросы новичков
Ответов: 13 Просмотров: 518
Здравствуйте.
Как можно грамотно реализовать разделитель тысячных с обрезкой нулей
Если я использую функцию number_format
А как теперь срезать нули чтобы из числа 12345.500 получилось 12 345,5
То есть разделил на тысячи и срезал лишние нули после запятой
Alexey_php
Отправлено: 25 Марта, 2017 - 21:50:32 • Тема: Сложить два массива по ключам и значениям • Форум: Вопросы новичков
Ответов: 1 Просмотров: 297
Добрый вечер.
Подскажите кто в курсе как реализовать подобное сложение 2 массивов
Посмотрел функции по работе с массивами ни одна не подходит
array_merge не подходит
Перебор через foreach 1 массива с подстановкой 2 массива не подходит, так как ключи могут изменится и не окажется ключей в первом массиве таких как будут у 2 массива, значения пропадут, неужели нету чего то элементарного что бы сложить два массива по ключам + сложить значения
Ниже привожу что я имею и хочу.
1 массив
2 массив
результат нужен вот такой
(Добавление)
Пробовал вот так
PHP:
скопировать код в буфер обмена
$merge = $array_1 [ 1] + $array_2 [ 1] ; //Складываем массивы чтобы убрать дубликаты ключей
$keys = array_keys ( $merge ) ; //Выбираем только ключи массива, значения игнорируем
foreach ( $keys AS $val )
{
$result [ $val ] += $array_1 [ 1] [ $val ] ;
$result [ $val ] += $array_2 [ 1] [ $val ] ;
}
(
[ 1 ] => 151. 15
[ 5 ] => 2
[ 8 ] => 202
[ 9 ] => 30
)
Alexey_php
Отправлено: 15 Сентября, 2016 - 23:07:51 • Тема: Cложить многомерный массив по id • Форум: Вопросы новичков
Ответов: 3 Просмотров: 263
Нашёл вот что
T1grOK твой код краше спасибо.
А вывод то, все равно 2 foreach есть
PHP:
скопировать код в буфер обмена
foreach ( $row AS $val )
{
if ( ! isset ( $array [ $val [ 'id' ] ] ) ) {
$array [ $val [ 'id' ] ] = $val ;
continue ;
}
$array [ $val [ 'id' ] ] [ 'price' ] += $val [ 'price' ] ;
}
foreach ( $array AS $key => $val )
{
echo $val [ 'id' ] . ' - ' . $val [ 'name' ] . ' - ' . $val [ 'price' ] . '<br>' ;
}
Вопрос остался открытым, возможно ли 1 шт. foreach сделать сложение
Alexey_php
Отправлено: 15 Сентября, 2016 - 17:28:08 • Тема: Cложить многомерный массив по id • Форум: Вопросы новичков
Ответов: 3 Просмотров: 263
Здравствуйте.
Имею ассоциативный массив. (Вывод не из базы а то GROUP BY id)
Вот такого вида
PHP:
скопировать код в буфер обмена
(
(
[ id] => 3
[ name] => Ракета
[ price] => 1257. 14285714
)
(
[ id] => 3
[ name] => Ракета
[ price] => 1680. 00000000
)
(
[ id] => 1
[ name] => Шатл
[ price] => 1232.00000000
)
)
Делаю так
встал на сложении внутри массива, так как хочу получить вот такой вид не используя 2 шт. foreach
PHP:
скопировать код в буфер обмена
(
(
[ id] => 3
[ name] => Ракета
[ price] => 2937, 14285714 ( Сложение двух ID = 3)
)
(
[ id] => 1
[ name] => Шатл
[ price] => 1232.00000000
)
)
Страниц (2): [1] 2 »
Powered by ExBB FM 1.0 RC1. InvisionExBB