Как преобразовать строку в двойную?

0

Когда я выбираю из DB Oracle значение -0.10 но была выбрана строка типа и значение -1, почему?

$query_for_balance = "select balance_$ from bis.client_balance_rate_plan where msisdn=$gett";
$per_for_balance = oci_parse($conn, $query_for_balance);
oci_execute($per_for_balance);
oci_fetch_all($per_for_balance, $arr_for_balance);
$balance_1 = $arr_for_balance['BALANCE_$'];
$balance_2 =$$balance_1[0];
echo($balance_2);
Теги:

3 ответа

0
Лучший ответ

echo number_format((float) $value, 2, '.', ''); что вы хотите?

(float) здесь не требуется, он просто конвертируется из строки в float.

Чтобы преобразовать в поплавок, вам просто нужно сделать бросок следующим образом:

$valueString = '-0.10'; 
$valueFloat = (float) $valueString;
  • 0
    $ query_for_balance = "выберите баланс_ $ из bis.client_balance_rate_plan, где msisdn = $ gett"; $ per_for_balance = oci_parse ($ conn, $ query_for_balance); oci_execute ($ per_for_balance); oci_fetch_all ($ per_for_balance, $ arr_for_balance); $ balance_1 = $ arr_for_balance ['BALANCE_ $']; $ balance = number_format ((float) $ balance_1 [0], 2, '.', ''); эхо ($ баланса); // результат 0.00
0

Чтобы конвертировать в float, вам просто нужно использовать следующий код:

$balance_2 = floatval($balance_1[0]);
0

Похоже, вы случайно используете переменную переменную:

$balance_2 = $$balance_1[0];
             ^^ here

Это приведет к неожиданным результатам, поскольку вы попытаетесь получить первый элемент несуществующей переменной, и это, вероятно, приведет к false/-1.

Вы, вероятно, хотите:

 // get the first element of the 'balance_$' column
$balance_2 = $balance_1[0];
  • 0
    Я преобразовал его .. но результат 0,00 Это мой код $ query_for_balance = "select balance_ $ from bis.client_balance_rate_plan где msisdn = $ gett"; $ per_for_balance = oci_parse ($ conn, $ query_for_balance); oci_execute ($ per_for_balance); oci_fetch_all ($ per_for_balance, $ arr_for_balance); $ balance_1 = $ arr_for_balance ['BALANCE_ $']; $ balance = number_format ((float) $ balance_1 [0], 2, '.', ''); эхо ($ баланса);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню