За последние 24 часа нас посетили 59725 программистов и 1852 робота. Сейчас ищут 1126 программистов ...

как преобразовать строку в число?

Тема в разделе "PHP для новичков", создана пользователем ionico, 22 ноя 2008.

  1. ionico

    ionico Активный пользователь

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    Ув. программисты.
    Сижу ломаю голову над мануалами и не могу понять, как всё-таки преобразовать строку в число?

    моя строка:
    Код (Text):
    1. $stroka = "54.06";
    нужно превратить её в число тип "double"

    есть какая-то функций strod(), но она почему-то отсутствует в мануале...
    помогите пожалуйста!...
     
  2. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    В PHP нет строгой типизации данных. Переменные автоматически приводятся к нужному типу при использовании.
     
  3. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    PHP:
    1. $num = (double)'45.06';
     
  4. ionico

    ionico Активный пользователь

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    у меня это значение записывается в БД, где формат ячейки DOUBLE и вызывается ошибка #1064 на этой переменной =(
     
  5. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Покажи как записываешь?
     
  6. ionico

    ionico Активный пользователь

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0

    Код (Text):
    1.  
    2. $perID  = 2;
    3. $stroka = "54.06";
    4.  
    5. $query = "UPDATE my_table SET per = ".$stroka." WHERE perID=".$perID;
    6. trim($query);
    7. $result = mysql_query($query);
     
  7. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    [sql]$query = "UPDATE my_table SET per = '".$stroka."' WHERE perID=".$perID; [/sql]
     
  8. ionico

    ionico Активный пользователь

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    к сожалению, ковычки ничего не изменили :(
     
  9. AlexGousev

    AlexGousev Активный пользователь

    С нами с:
    25 мар 2006
    Сообщения:
    1.505
    Симпатии:
    0
    Адрес:
    Москва
    Кавычки тут не обязательны.
    ionico, сообщение об ошибке целиком нужно.
    Ну и после $query = … сделать die($query) чтобы увидеть целиком запрос
     
  10. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Про кавычки верно, просто в мануале про них ничего нет (думал, может баг какой), попробовал через phpmyadmin, а он в кавычках загоняет.
     
  11. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    а это чё?
     
  12. ionico

    ionico Активный пользователь

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    вот полный запрос (die($query) :

    Код (Text):
    1.  
    2. UPDATE sets SET name = 'Nightdfsd' date = '22 sept. 2008' size = '54.00' duration = '59:01' link = 'http://site.ru/disk/2643027000/nskiy_night%20.mp3.html' isnew = 1 WHERE setID=1
    я проставил кавычки... не знаю, правда, зачем.

    Вот ошибка:

    Код (Text):
    1.  
    2. 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'date = '22 сент. 2008' size = '54.00' duration = '59:01' l
     
  13. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
  14. ionico

    ionico Активный пользователь

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    спасибо. я просто забыл про запятые... + ковычки пригодились!

    всем огромное спасибо. извините за тупость и пустую трату вашего времени!