Пространства имен в 5.3 - доступны снапшоты

Krishna

Продался Java
fixxxer
1. Если что, в PHP динамическая типизация и существуют типы данных :) Иначе, что по-твоему, что делают функции типа is_float, is_int? Ограничения на параметры функций в виде указания приемлемых классов объектов или массива - уже есть. Так что, проблем не вижу.
 

crocodile2u

http://vbolshov.org.ru
Что-то мне кажется, мы удаляемся от темы пространств имен. А мне вот, например, очень хотелось бы знать поточнее следующее:
слово "import" теперь что, будет ключевым? и его нельзя будет использовать в качестве имени для метода? Если это так - то это СЕРЬЕЗНОЕ нарушение обратной совместимости. Лично меня такой факт просто заставит НЕ обновляться в течение какого-то времени, чего я совсем не хочу.
Мне придется провести большую работу, что изменить код существующих проектов - и все потому, что какая-то фича, без которой все великолепно обходились и которая (по моему мнению) немного положительного привнесет в разработку - перекочевывает в релиз.

Если мои опасения подтвердятся - даже не знаю, что делать... собирать подписи, что ли - за то чтобы убрать эти неймпейсы обратно?

Плюс ко всему - я пока что не вижу ни одного плюса в использовании неймспейсов - по крайней мере, прочитав пару статей на эту тему.
 

tony2001

TeaM PHPClub
ну во-первых, не надо паники: http://news.php.net/php.internals/32916
а во-вторых: А ГДЕ Ж ВЫ РАНЬШЕ БЫЛИ?
если это на вас _так_ влияет, что ж вы сидели молча столько времени?
ждали, пока за вас кто-то подумает? принесет на блюдечке с голубой каёмочкой?
гениально! и эти люди потом говорят про нарушение обратной совместимости..

>Если мои опасения подтвердятся - даже не знаю, что делать...
>собирать подписи, что ли - за то чтобы убрать эти неймпейсы обратно?

5 баллов.
 

crocodile2u

http://vbolshov.org.ru
Ну, про подписи-то я пошутил, конечно :)

А вот насчет "А ГДЕ Ж ВЫ РАНЬШЕ БЫЛИ?"... Антон, не так уж много информации о неймспейсах было-таки доступно широкой публике. Далеко не все читают intrenals. И такие ну очень широкоупотреблямые слова как Date или import - на мой взгляд, никак не должны попадать в список зарезервированных - по крайней мере сейчас, когда PHP давно уже стал матерым языком, язычищем, можно сказать.

-~{}~ 25.10.07 12:53:

Кстати, use будет, имхо, действительно хорошей альтернативой.
 

tony2001

TeaM PHPClub
>Антон, не так уж много информации о неймспейсах было-таки доступно широкой публике.

так ведь никто и не интересовался.
т.е. всем интересно было "а будут?" и "ну че, когда?", а "как именно" - большинству пофиг.

>Далеко не все читают intrenals.

"excuses, excuses..." (с)

PHP (как и любой OSS проект, наверное) - это решение проблем тех, кто участвует в его разработке (или влияет на проект другими средствами, в том числе и через internals).
мне надо - я сделаю. пользователям надо - они поднимают эту тему, разработчики делают.
пользователи молчат - значит никому не надо, значит всё в порядке, всё остаётся как есть.

вы не знали, что есть снапшоты? вы не тестите RC? вы не сообщаете о своих проблемах?
извините, но вы в пролёте.
 

Major

Новичок
Кстати слово use было бы привычнее, чем импорт. Почему они сразу не догадались так сделать, непонятно. Убили бы 2х зайцев. Во 1х не было бы конфликтов с именами функций в уже написанных скриптах, во 2х это слово привычнее (типа аналог C++ using), да к тому же оно уже зарезервировано. И в редакторах оно подсвечивается. Помоему все говорит за то чтобы сменили import на use.
 

tony2001

TeaM PHPClub
>Кстати слово use было бы привычнее, чем импорт. Почему они сразу не догадались так сделать, непонятно.

наверное, отчасти потому, что использование слова import в данном случае гораздо более логично?

см. например http://news.php.net/php.internals/32977
 

StUV

Rotaredom
crocodile2u
имхо, прогрепать код с заменой "import" на что-то еще - не такая уж проблема ;)

по поводу "use", "using", etc... - с тем же успехом у кого-нить могут быть методы с такими именами

tony2001
почему не __import ?..
 

tony2001

TeaM PHPClub
>почему не __import ?..
потому, что с "__" начинаются magic methods, а это не метод, а конструкция языка, как if, switch, include etc.
 

crocodile2u

http://vbolshov.org.ru
StUV
use - зарезервированное слово. см. мануал.

tony2001
Я в принципе, с одной стороны, согласен, конечно, с твоими словами. Лично я не сделал для развития PHP ничего, кроме пары багрепортов, хотя при желании мог бы сделать больше. И все-таки, хочу обратить внимание: здесь налицо случай т. н. перехода количества в качество: у PHP столько пользователей, что это накладывает на его разработчиков ответственность, которая качественно отличается от ответственности разработчиков подавляющего большинства опенсорс продуктов.

Что ж, в результате оказывается, что и спорить, скорее всего, не о чем. use, очевидно, не вызовет конфликтов, ни с точки зрения BC, ни с точки зрения логичности/осмысленности.
 

tf

крылья рулят
crocodile2u, где ответственость, там тормаза=))
 

AmdY

Пью пиво
Команда форума
crocodile2u, зря ты так возмутился, у меня недавно возник конфликт имён с расширением из PECL, но затем написал скрипт, который заменил бажное имя класса во всех файлах (там строчек десятка два, а вот расширение полезно для многих).
Затем наступил второй этап, сделать тоже на старых проектах. Заказчики оказались рады заблоговременной техподдержке и всё окончилось даже лучше чем предполагал.
А неймспейсы немного запаздали, я буду их юзать где-то в РНР 6, эт лет так через 5.
 

AmdY

Пью пиво
Команда форума
Ну примерно через столько я перейду на 6-ку и буду мутить там свой велосипед
 

fixxxer

К.О.
Партнер клуба
> УРАААА этого реально не хватало

поразительно - людям чего-то реально не хватает, но они при этом даже не хотят оглянуться вокруг. :)
http://pecl.php.net/package/htscanner - уже год как есть
 

boombick

boombick.org
имхо, прогрепать код с заменой "import" на что-то еще - не такая уж проблема
а если код - это OpenSource- продукт?...
ЗЫ Мне абсолютно параллельно, я не даю своим методам подобные имена :) Именно, кстати, по той причине, что они подсвечиваются редакторами и могут внезапно перейти в разряд зарезервированных :)
 
Сверху