<rmcreative>

RSS

PHP, type hinting для скалярных типов

21 мая 2010

В транк PHP скоммичен type hinting для скалярных типов. Т.е. скоро можно будет писать вот такой код:

function foo(int $bar) {}

Комментарии RSS

  1. №2567
    андрей
    андрей 21 мая 2010 г., 16:15:10

    а щас что нельзя? бред!

  2. №2570
    a.tukai
    a.tukai 21 мая 2010 г., 16:38:54

    И сейчас можно. Всегда пишу array $array

  3. №2571
    Ewg
    Ewg 21 мая 2010 г., 17:15:03

    a.tukai, array и скалярные типы - разные вещи!

    андрей, проверь.

  4. №2572
    Ewg
    Ewg 21 мая 2010 г., 17:18:50
    &lt;?php
     
    function foo(integer $a) {
     ;
    }
    foo(10);

    Argument 1 passed to foo() must be an instance of integer, integer given, called in on line 6 and defined

    андрей, Ололо?

  5. №2573
    андрей
    андрей 21 мая 2010 г., 17:21:37

    ваша правда.

  6. №2574
    андрей
    андрей 21 мая 2010 г., 17:23:04

    А вот так можно!

    function foo(ClassName $a) {

    }

    $e = new ClassName();

    foo($e);

  7. №2575
    Константин
    Константин 21 мая 2010 г., 19:02:53

    Хорошая новость)

  8. №2576
    gildenburg
    gildenburg 21 мая 2010 г., 19:32:59

    андрей, a.tukai, поздравляю, вы - два дибила =)

  9. №2577
    Чистяков Денис
    Чистяков Денис 21 мая 2010 г., 20:43:15

    Замечательная новость, ждем )

  10. №2580
    Игорь
    Игорь 21 мая 2010 г., 21:39:43

    Сейчас можно использовать только array и имя класса

    http://php.net/manual/en/language.oop5.typehinting.php

    читайте первую строчку

    Sam, а это в каких ветках? в 5.3.x и 6 или и в 5.2.x тоже сделали?

  11. №2581
    AmdY
    AmdY 21 мая 2010 г., 23:42:33

    Патч всего-то годик пылился, странно там работают, городят непонятные кривые велосипеды, а такие плюшки даже готовыми не пускают в коре.

  12. №2582
    mex
    mex 21 мая 2010 г., 23:56:16

    а зачем это надо?

  13. №2583
    Игорь
    Игорь 22 мая 2010 г., 0:02:59

    mex ну собственно название type hinting намекает =) чтоб быть четко уверенным что метод получит параметр соответствующего типа,

    тратить меньше времени на проверку типа непосредственно в методах и написание тестов,

    другим будет легче ориентироваться и разбираться в новом коде - в общем для написания более красивого и строгого кода

  14. №2584
    Sam
    Sam 22 мая 2010 г., 4:41:06

    Игорь

    Насколько знаю, в транке сейчас шестёрка.

  15. №2590
    АШот
    АШот 24 мая 2010 г., 10:44:55

    gildenburg - Сергей Д.?

  16. №2594
    Den
    Den 28 мая 2010 г., 12:51:02

    Было бы замечательно, если бы PHP умел автоматически приводить типы при использовании type hint в определенном режиме. Это намного облегчило бы работу с MongoDB, которая хранит данные в строго типизированном представлении.

  1. Почта опубликована не будет.

  2. Можно использовать синтаксис Markdown или HTML.

  3. Введите ответ в поле. Щёлкните, чтобы получить другую задачу.