2014-11-13 5 views
1

Я получаю значение из базы данных 67.00€. Мне нужно несколько это значение с целым числом. Итак, используется функция explode php для преобразования этого в массив и хранится в переменной $result.Умножение с первым значением массива, возвращающим 0 всегда

print_r() выглядит следующим образом:

Array 
(
    [0] => 67 
    [1] => 00€ 
) 

Теперь, если я умножая первое значение этого массива с любым значением, результат всегда равен 0. как:

$result[0]*12

Я также попытался преобразовать первое значение в целое число, используя (int) $result[0] и intval($result[0]). Оба выхода 0

Что я делаю неправильно?

+1

Может кто-нибудь объяснить, почему я получаю отрицательные голоса? – Kanav

+0

Попробуйте 'var_dump()' или отладчик. – ThW

+0

'var_dump'' $ result [0] 'выводит' string 67' где 'intval ($ result [0])' output' int 0' – Kanav

ответ

1

Попробуйте это:

intval($result[0])* 12 

Я попробовал это, и это работает для меня. Создайте новый файл и запустите в localhost другой проект.

test.php

<?php 
error_reporting(E_ALL); 
ini_set('display_errors', 1); 

$str = '67.00$'; 
$result = explode('.',$str); 
print_r($result); 

$ans= intval($result[0])*12; // or $ans=($result[0])*12; both worked 
echo 'Answer-->'.$ans; // 804 
?> 

Я не знаю, что вы делаете неправильно. Надеюсь, вы сможете обнаружить свое заблуждение.

+1

Пробовал это также. Еще такой же результат – Kanav

+2

отредактировал мой ответ .... попробуйте. Или поделиться своим кодом, тогда будет легко отлаживаться, может быть, вы сделали что-то не так. который, возможно, вы считаете правильным. – Naincy

+1

отредактировал мой вопрос для получения дополнительной информации. – Kanav

 Смежные вопросы

  • Нет связанных вопросов^_^