The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Релиз языка программирования PHP 8.1"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Релиз языка программирования PHP 8.1"  +/
Сообщение от opennews (?), 25-Ноя-21, 21:14 
После года разработки представлен релиз языка программирования PHP 8.1. Новая ветка включает серию новых возможностей, а также несколько изменений, нарушающих совместимость...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=56232

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Онаним (?), 25-Ноя-21, 21:14   –2 +/
Fibers - это вкусно и полезно. Особенно для сложных кооперативных тасков.
Производительность правда ожидаемо хуже линейных тасков на генераторах. Накладные расходы на переключение контекста выше в два раза по факту, что в общем и логично, контекст генератора собственного стека не имеет, в отличие от файбера.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #5, #13, #22, #30

2. Сообщение от А где же каменты (?), 25-Ноя-21, 21:17   –7 +/
Никита в контрибьюторах или уже нет?
Ответить | Правка | Наверх | Cообщить модератору

3. Сообщение от pavlinux (ok), 25-Ноя-21, 21:19   +5 +/
> Добавлена поддержка перечислений,
>

enum Status {
     case Pending;
     case Active;
     case Archived;
   }


Это рейволюция, ребяты!
Ждём добавление указателей. Хачу на пэхе: *++d[&i++] = (volatile const * void __restrict *)&(s++[**++j]);


Ответить | Правка | Наверх | Cообщить модератору
Ответы: #8, #17, #20, #71, #132, #133

5. Сообщение от pavlinux (ok), 25-Ноя-21, 21:31   +28 +/
> .. кооперативных тасков... линейных тасков на генераторах.... контекст генератора ... в отличие от файбера.

Шоб с тобой дети на Brainfuck общались!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #63, #67

8. Сообщение от Я не очень хорош в придумывании ников (?), 25-Ноя-21, 21:40   +1 +/
Зачем?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #41

9. Сообщение от Аноним (9), 25-Ноя-21, 21:40   +15 +/
Так усложнили синтаксис, что java выучить уже легче чем php...
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #15, #28, #53, #121

10. Сообщение от Аноним (10), 25-Ноя-21, 21:43   +1 +/
Самый лучший язык из всех!
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #11, #26

11. Сообщение от Аноним (11), 25-Ноя-21, 21:48   +4 +/
"Самый лучший язык из всех для WordPress!"

fixed

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10 Ответы: #81

13. Сообщение от kai3341 (ok), 25-Ноя-21, 21:51   –4 +/
А можешь пояснить за файберы? Это асинхронность завозят?

PS: я не похапешник просто. Расскажу, с чем сталкивался

В python корутины -- это по факту генераторы. Прикольно, что простейшую корутину можно await-нуть вне event loop. Ржачно, что await и yield from -- это на уровне байткода одно и то же, и поэтому нельзя сделать yield from в асинхронном генераторе. Впрочем, устранимо -- нужно только на уровне байткода окончательно развязать корутины с генераторами

В JS асинхронность на промисах -- суть коллбэки. Питонячья асинхронность выглядит чуток костыльной на фоне промисов, но она работает и работает хорошо

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #68

14. Сообщение от Смузихлёб (?), 25-Ноя-21, 21:53   +6 +/
Что можно написать на пхп 8 чего нельзя было на пхп 4? К чему все эти обновления ради обновлений? Жизнь слишком коротка чтобы отслеживать всё это.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #18, #100

15. Сообщение от Смузихлёб (?), 25-Ноя-21, 21:55   +8 +/
Коту делать нечего, так он бубенцы лижет!!! Так и в современном ОйТи обновления ради обновлений.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #95

16. Сообщение от Анонимemail (16), 25-Ноя-21, 21:58   +4 +/
Еще добавили JIT на arm64
Ответить | Правка | Наверх | Cообщить модератору

17. Сообщение от Старший аноним (?), 25-Ноя-21, 22:00   +3 +/
Не дождешься. ПХП с 1 декабря закрывается.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #119

18. Сообщение от Аноним (11), 25-Ноя-21, 22:04   +2 +/
повышение призводительности в новых версиях имеет смысл всегда

а вот сахарок не особо нужен - все больше какойтой с++ франкенштейн получается

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #44

19. Сообщение от Филимон Ностальгический (?), 25-Ноя-21, 22:04   +3 +/
Когда-то Расмус Лердорф создал Personal Homepage Tools, чтобы дети и пенсионеры с рудиментарными знаниями в программировании могли создавать себе странички. За простоту использования они платили производительностью. Простота уже давно исчезла. За что платят производительностью пользователи PHP ?

Ну, и чтобы два раза не вставать: когда уже его перепишут на Rust ? Доколе мы будем страдать от багов ?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #29, #54, #58, #69, #123

20. Сообщение от Bx (ok), 25-Ноя-21, 22:11   +1 +/
Что ж тебя так корячит? Ну сделали энамы, тебе то что? Хлеб отобрали? Мяса недоложили? Не дают глупость писать?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #23, #25

21. Сообщение от Аноним (22), 25-Ноя-21, 22:16   +/
Кстати - кто есче не попробовал - очень рекомендую попробовать екстеншн к пхп -  свул, ( swoole / openswoole ).
Очень классная штука - добавляет корутины, параллелизацию, евент луп и тд и тп.
тье в нод переписывать вообсче больше ничего не надо.  
пилиться китайскими камрадами
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #24, #36, #80

22. Сообщение от Аноним (22), 25-Ноя-21, 22:18   +/
попробуйте также swoole/openswoole - более полноценная штука чем просто одни файберы
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

23. Сообщение от Аноним (23), 25-Ноя-21, 22:26   +4 +/
> Не дают глупость писать?

Ох, если бы ...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20

24. Сообщение от Аноним (-), 25-Ноя-21, 22:49   +2 +/
>Свул

Швуле, судя по твоим заигрываниям с нодойжс.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21

25. Сообщение от Аноноша (?), 25-Ноя-21, 23:00   +5 +/
Меня одного мучает вопрос зачем там case внутри enum? Нельзя было просто без case через запятую сделать?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #47, #59, #78

26. Сообщение от Аноноша (?), 25-Ноя-21, 23:01   +/
Мне жаль тебя расстраивать...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10 Ответы: #97

28. Сообщение от Аноним (28), 25-Ноя-21, 23:23   +1 +/
У java очень простой синтаксис. Особенно у java 8
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

29. Сообщение от Аноним (28), 25-Ноя-21, 23:26   +7 +/
В php очень быстрый интерпретатор.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #72, #115

30. Сообщение от Аноним (30), 25-Ноя-21, 23:34   –4 +/
Laravel вдохновлялась Рельсами, теперь вот еще Fiber завезли из Ruby'07. Бххх.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #31, #70

31. Сообщение от Аноним (30), 25-Ноя-21, 23:35   +/
Ruby'17, конечно. Опечатка.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30 Ответы: #42

36. Сообщение от Хирург (?), 25-Ноя-21, 23:52   +/
я предпочитаю adblock+ и noscript
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21

37. Сообщение от Михрютка (ok), 26-Ноя-21, 00:00   +2 +/
>>>function foo(int $a, int $b) { /* … */ }

Микола, диви, який смутний смайлик!

Ответить | Правка | Наверх | Cообщить модератору

38. Сообщение от Аноним (38), 26-Ноя-21, 00:14   +3 +/
Уродливый франкенштейн c $

enum Status {
    case Pending;
    case Active;
    case Archived;
}

Зачем тут case?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #40

40. Сообщение от pavlinux (ok), 26-Ноя-21, 00:30   +4 +/
В ихавом enum могут быть не только enum


enum Status
{
    case DRAFT;
    case PUBLISHED;
    case ARCHIVED;
    
    public function color(): string
    {
        return match($this)
        {
            Status::DRAFT => 'grey',  
            Status::PUBLISHED => 'green',  
            Status::ARCHIVED => 'red',  
        };
    }
}

юзать так:


$status = Status::ARCHIVED;

$status->color(); // 'red'

https://stitcher.io/blog/php-enums


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38 Ответы: #46, #51, #52

41. Сообщение от pavlinux (ok), 26-Ноя-21, 00:36   +5 +/
> Зачем?

Чтоб был Тьюринг-полный пздц.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8

42. Сообщение от Аноним (42), 26-Ноя-21, 01:51   +1 +/
Winapi, скорее.
там они чуть с первой версии ос появились.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31

44. Сообщение от Смузихлёб (?), 26-Ноя-21, 03:13   –7 +/
> повышение призводительности в новых версиях

Да вот только на практике новые версии ВСЕГДА тормознее старых и требовательнее к железу. Запусти четвертую пыху на современном железе и офигеешь от производительности.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #50, #64, #101

46. Сообщение от Твайлайт Спаркл (?), 26-Ноя-21, 06:10   +1 +/
#[allow(dead_code)]
enum Status {
    Draft,
    Published,
    Archived,
}

impl Status {
    #[must_use]
    pub fn color(&self) -> &'static str {
        match self {
            Self::Draft => "grey",
            Self::Published => "green",
            Self::Archived => "red",
        }
    }
}

fn main() {
    let status = Status::Archived;
    println!("{}", status.color());  // 'red'
}

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40 Ответы: #66

47. Сообщение от Аноним (-), 26-Ноя-21, 06:19   –1 +/
Ты не один задаешься этим вопросом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

49. Сообщение от Какаянахренразница (ok), 26-Ноя-21, 07:10   –3 +/
А чё, 5.6 больше не в моде?
Ответить | Правка | Наверх | Cообщить модератору

50. Сообщение от Ilya Indigo (ok), 26-Ноя-21, 07:11   –2 +/
Конечно, я уже молчу что код просто не будет работать, там php-fpm просто нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #124

51. Сообщение от Ilya Indigo (ok), 26-Ноя-21, 07:19   –4 +/
abstract class News
{
    public const status =
    [
        'draft' => 'grey',  
        'published' => 'green',  
        'arcived' => 'red',
    ];

    public static function test()
    {
        ...
        self::status['arcived']; // 'red'
        ...  
    }

}

News::status['arcived']; // 'red'

Зачем добавили эти enum-ы с таким синтаксисом вообще не понятно.
Даже от match была польза, а зачем нужны такие enum-ы не представляю.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40 Ответы: #73

52. Сообщение от x3who (?), 26-Ноя-21, 07:25   +1 +/
Это не отменяет вопроса зачем там case. Ведь "DRAFT;" отличается от "public function x(...)" если уж так хочется добавить методы.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40 Ответы: #106

53. Сообщение от Аноним (53), 26-Ноя-21, 07:43   –3 +/
Зарплата пхпшника - 50р/час
Зарплата джависта - 50$/час
Выбор очевиден
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #79

54. Сообщение от leap42 (ok), 26-Ноя-21, 07:46   –1 +/
> Ну, и чтобы два раза не вставать: когда уже его перепишут на Rust ? Доколе мы будем страдать от багов ?

Кто именно перепишет? Растамэны, которые все вместе пока ничего кроме grep не переписали, или сами разрабы, которые, будучи способными писать подобные проекты на Си, к Rust скорее всего относятся без энтузиазма (это мягко говоря)?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

55. Сообщение от Ilya Indigo (ok), 26-Ноя-21, 07:50   +/
Ну что за новость на коленке?
Тут https://www.php.net/releases/8.1/ru.php даже больше описано.
А сюда https://www.php.net/manual/ru/migration81.php даже и не заглядывали.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #105

57. Сообщение от Аноним (53), 26-Ноя-21, 08:06   +/
И зачем все это нужно, реально какой то с++ получился.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #60, #65, #74, #143

58. Сообщение от Аноним (58), 26-Ноя-21, 09:34   +5 +/
С чего бы она исчезла? Ни встроенный шаблонизатор, ни встроенные глобальные функции никуда не делись. Если хочешь, можешь писать код в стиле 2005 года.

> За что платят производительностью пользователи PHP?

Какой производительностью? У PHP есть неплохой JIT и кеш байткода — это всякие Ruby, Javascript и прочие хипстоподелия страдают по сравнению с PHP.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #75, #87

59. Сообщение от Стас Михайлов (?), 26-Ноя-21, 09:52   +1 +/
Там switch не хватает ешо. Какой case без swtich?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

60. Сообщение от Стас Михайлов (?), 26-Ноя-21, 09:55   +1 +/
Вайтишников пугать. И поделом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

61. Сообщение от Аноним12345 (?), 26-Ноя-21, 10:14   +1 +/
Ломать - не строить
Ответить | Правка | Наверх | Cообщить модератору

63. Сообщение от YetAnotherOnanym (ok), 26-Ноя-21, 11:10   +2 +/
Ачотакова? Мы же не говорим "нити", мы говорим "треды" (ну, иногда "потоки"). Здесь то же самое.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #76, #117

64. Сообщение от anonymous (??), 26-Ноя-21, 11:11   +/
Вы тут сильно ошибаетесь. То же добавление JIT ускорить работу PHP в разы. И вообще новые мажорные версии (начиная м 5ой) идут на ускорение, а не на замедление.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #109

65. Сообщение от Сергей Борисович Кореневскийemail (?), 26-Ноя-21, 11:11   –1 +/
Ваш вывод говорит что вы на пыхе сложней калькулятора ни чего не делали.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

66. Сообщение от anonymous (??), 26-Ноя-21, 11:17   +2 +/
А зачем нужны "allow(dead_code)" и "must_use"? Выглядит как какая-то ненужная магия.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46 Ответы: #83, #85

67. Сообщение от Онаним (?), 26-Ноя-21, 11:23   –2 +/
Ну сорян, гуманитариям просьба не беспокоить.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5

68. Сообщение от Онаним (?), 26-Ноя-21, 11:26   +1 +/
Ну вот раньше да, кооперативные таски (которые в отдельных местах обозвали coroutine) приходилось лепить на генераторах. Минус - невозможность прервать исполнение в вызываемых процедурах/методах, потому что yield доступен только из процедуры/метода самого генератора.

Разница в том, что в отличие от генератора у Fiber есть свой сохраняемый стек вызовов, и соответственно Fiber можно прервать откуда угодно, ну и чуть более логичные названия служебных методов, не просто там next() от перечисления, а явное resume(), и явный старт через start(), с генераторными тасками надо current() вызывать, выглядит жутко уныло :D

Остальное по сути всё то же самое, всё так же из resume возвращается значение, всё та же инициализация, etc. Ещё можно внутрь Fiber'а Exception бросить, но применения этой шляпе я не придумал пока.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13

69. Сообщение от YetAnotherOnanym (ok), 26-Ноя-21, 11:34   –3 +/
> За простоту использования они платили производительностью

И дырявостью. Сукербергу даже пришлось свой собственный пых написать, настолько плох был тогдашний пых.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #114

70. Сообщение от Онаним (?), 26-Ноя-21, 11:40   +/
Laravel сбоку, а Fiber завезли в кору.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30

71. Сообщение от Онаним (?), 26-Ноя-21, 11:41   +1 +/
enum хорошо, раньше приходилось const'ами лепить.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

72. Сообщение от YetAnotherOnanym (ok), 26-Ноя-21, 11:44   –8 +/
Кгм... когда-то (ещё во времена 5-го пыха) пришлось покопаться в коде корп. сайта, доставшегося мне по наследству. Так вот, там на каждое обращение к мускулу устанавливалось соединение, скрипт авторизовывался, выполнял запрос, получал результат и отключался. И так много раз при генерации одной страницы. На каждый пук - полный цикл. Тут никакой "быстрый интерпретатор" не поможет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #88, #89, #94, #102, #110

73. Сообщение от Онаним (?), 26-Ноя-21, 11:45   –2 +/
Окей, а теперь расширь это на два признака. И получишь шляпку в два массива.
А теперь расширь на вычисляемое.

Кстати для просто одиночного типозначения метод с match не нужен, есть value(), который можно задать в case.

Так-то нынешний Enum - это по сути сахар вокруг специфичного класса.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #77

74. Сообщение от Онаним (?), 26-Ноя-21, 11:46   +/
Ну пых так-то изначально сильно плюсы-подобен, поэтому не удивительно.
Перегрузку операторов вот никак, но вроде RFC есть уже.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

75. Сообщение от Онаним (?), 26-Ноя-21, 11:49   –1 +/
Из навесных шаблонизаторов очень хорош Blitz от Alexey Rybak, он идёт как модуль, и прост в доску, хотя конечно нюансов у него полно. Поскольку у PHP появился JIT, подумываю собственно переписать его Blitz на собственно PHP, сохраняя совместимость с шаблонами, по производительности теперь должно выйти не хуже. Всякие монструозные Smarty из 100500 классов на инициализацию тратят больше, чем на вывод шаблона.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58 Ответы: #82

76. Сообщение от Аноним (76), 26-Ноя-21, 11:50   –2 +/
"тасков", здесь однозначно есть русскоязычный аналог.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63 Ответы: #84, #162

77. Сообщение от Ilya Indigo (ok), 26-Ноя-21, 11:55   +/
Я ни черта не понял из того что Вы написали.
Да и ф-ии value() в php нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73 Ответы: #107

78. Сообщение от Аноним (78), 26-Ноя-21, 11:58   –2 +/
> case внутри enum?

Это ответ на вопрос, что курят пыхпыхи...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

79. Сообщение от Аноним (78), 26-Ноя-21, 11:59   –4 +/
Потому что жабист выдаёт в час продукции на $100, а пыхпыхарь - на 100 руб.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53 Ответы: #96

80. Сообщение от Онаним (?), 26-Ноя-21, 12:01   +/
Ну я попробовал, не зашло, . В итоге нарисовал свой кооперативный тасклуп, универсальный для различных вариантов имплементации - генераторы, файберы, просто state-machine routines, который расширенный эвентлуп с кучей сахара, и не требует никаких расширений.

Конкретно не зашла event model, вот эти вот все ->on, который превращают любой мало-мальски сложный код в nesting hell.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #131

81. Сообщение от Аноним (78), 26-Ноя-21, 12:01   –4 +/
> для WordPress

Понятно тогда, почему во вротпрессе столько дыр.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

82. Сообщение от Sw00p aka Jerom (?), 26-Ноя-21, 12:02   –1 +/
в свое время ctpp был хорош, забросили
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #75 Ответы: #90, #103

83. Сообщение от Аноним (78), 26-Ноя-21, 12:04   –3 +/
Дак растаманы! же писали! В здравом уме такое! не придумать!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #153

84. Сообщение от YetAnotherOnanym (ok), 26-Ноя-21, 12:19   +4 +/
"Анатолий Борисович, ну зачем вот это вот «ваучер», ведь есть же хорошее русское слово - «приватизационный чек»" (ц)


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #76

85. Сообщение от Твайлайт Спаркл (ok), 26-Ноя-21, 12:28   +3 +/
> А зачем нужны "allow(dead_code)" и "must_use"? Выглядит как какая-то ненужная магия.

allow(dead_code) действительно не нужен, он заглушает предупреждения, что не все варианты enum'a используются.

А вот must_use довольно крут. Он добавляет предупреждение на такой код:
status.color();
То есть возвращаемое значение должно быть использовано (как минимум присвоено в переменную).
let _ = status.color();

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #138

86. Сообщение от Аноним (86), 26-Ноя-21, 12:31   –1 +/
И снова ломают совместимость :(
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #142, #157, #159

87. Сообщение от Аноним (87), 26-Ноя-21, 12:48   +/
[комментарий про юникод и пхп]
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58 Ответы: #130

88. Сообщение от Blind Vic (ok), 26-Ноя-21, 12:54   +1 +/
Просвещайся:
https://en.wikipedia.org/wiki/Common_Gateway_Interface
https://httpd.apache.org/docs/2.4/mod/prefork.html
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72

89. Сообщение от Аноним (89), 26-Ноя-21, 12:58   +2 +/
На жабе тоже можно написать подобное - будет жаба виновата?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #92

90. Сообщение от Филимон Недоумевающий (?), 26-Ноя-21, 13:25   +1 +/
Пацаны, а вас не смущает, что вы на шаблонизаторе пишете шаблонизатор ?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #82 Ответы: #93, #104

91. Сообщение от Аноним (91), 26-Ноя-21, 13:29   +/
php - personal home page
emacs - editor macros

Nickto ne zabyt. Nichto ne zabyto.

Ответить | Правка | Наверх | Cообщить модератору

92. Сообщение от YetAnotherOnanym (ok), 26-Ноя-21, 13:46   –5 +/
> На жабе тоже можно написать подобное - будет жаба виновата?

Емнип, жаба никогда не позиционировалась как язык, на котором сможет писать любой пионер и пенсионер. Она создавалась как язык для любых устройств, а не для любых неучей. А вот пых создавался именно как язык, на котором может писать кто угодно (это само по себе не есть что-то плохое), причём, что намного хуже, не включая мозг. И это уже проблема именно языка - не в узком смысле (проблема синтаксиса, который такое позволяет), а языка в целом - его экосистемы и его позиционирования его создателем.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #89 Ответы: #171

93. Сообщение от Sw00p aka Jerom (?), 26-Ноя-21, 13:58   –1 +/
> Пацаны, а вас не смущает, что вы на шаблонизаторе пишете шаблонизатор ?

есть такое, но свои средства пхп далеки от понятия шаблонизатора. Но указанные как и мной, так и выше шаблонизаторы - написаны в виде модуля пхп (на С), не на самом языке пхп.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #90

94. Сообщение от onanim (?), 26-Ноя-21, 14:17   +/
а как бы ты это сделал на C++? или другом любимом языке программирования.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #98

95. Сообщение от Аноним (95), 26-Ноя-21, 14:30   +1 +/
Не ИТ это породило, а маркетинг. Нельзя теперь сидеть на строй версии айфона это не модно.
Вот и тут нужно обязательно взять новую версию и "купить" ...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15 Ответы: #128

96. Сообщение от Аноним (95), 26-Ноя-21, 14:31   –3 +/
Так изначально было ... PHP был язык для быстрого старта компаний
сейчас кто мог отуда выбрался, а осталбьные там продолжают страдать

Что мешает изучить джаву или пайтон или голанг и двинуть дальше?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #79 Ответы: #112, #147

97. Сообщение от Аноним (95), 26-Ноя-21, 14:33   –3 +/
Что ты говоришь у Пыха есть сообщество говнарей такое же как и JavaScript так что не надо тут ...
Сидят делают типовые сайты для магазинов зоотоваров и пусть радуються.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #111, #141

98. Сообщение от YetAnotherOnanym (ok), 26-Ноя-21, 15:06   –4 +/
На плюсах - никак, ибо я не пишу на плюсах. На чём бы я сделал поддержание пула открытых соединений к БД в те времена - хз. Сейчас для своего любимого языка я просто возьму poolboy.


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94 Ответы: #135

100. Сообщение от Здрасьте (?), 26-Ноя-21, 16:17   –1 +/
Дофига всего. Взять те же namespace, как вспомню все эти длинющие названия классов в Zend Framework, так вздрогну.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #127, #164

101. Сообщение от Здрасьте (?), 26-Ноя-21, 16:18   +1 +/
PHP 8.1 на много голов быстрее, чем PHP4.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #122

102. Сообщение от Здрасьте (?), 26-Ноя-21, 16:18   +4 +/
Почитай про persistent connection в PHP, специалист херов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #116

103. Сообщение от домен в слонике (?), 26-Ноя-21, 16:19   +/
Его же Ще ковырял? Так ему некогда с айрисом-то =)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #82 Ответы: #108

104. Сообщение от Здрасьте (?), 26-Ноя-21, 16:19   +1 +/
PHP уже лет сто не шаблонизатор.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #90 Ответы: #126

105. Сообщение от Аноним (105), 26-Ноя-21, 16:20   –2 +/
>> https://www.php.net/releases/8.1/ru.php
> Ускорение WordPress на 3.5%

Все, пошел обновляться

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55

106. Сообщение от Здрасьте (?), 26-Ноя-21, 16:21   –1 +/
Потому что я могу захотеть назвать значение enum «public».
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52 Ответы: #144, #151

107. Сообщение от Здрасьте (?), 26-Ноя-21, 16:40   +/
Функции нет, есть свойство. Если значения присвоены, их можно получить через ->value
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #77

108. Сообщение от Sw00p aka Jerom (?), 26-Ноя-21, 16:41   –1 +/
> Его же Ще ковырял? Так ему некогда с айрисом-то =)

:) Ше, тах пхп модуль перестал работать после версии 5.3

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #103

109. Сообщение от Аноним (109), 26-Ноя-21, 16:50   –1 +/
а нам тут врут - что не в разы а на 40% в ненужно синтетическом тесте и 5-15% в реальном применении по результатам свежезапиленного для arm64. Но мы конечно верим анониму-ускоряльцу.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #64 Ответы: #113, #137

110. Сообщение от Аноним (110), 26-Ноя-21, 16:55   +1 +/
А ты не пробовал, прежде чем бежать все это ломать - выяснить, сколько времени занимает такая установка соединения - а сколько выполнялся запрос к базе?

Обычно подобные оптимизации никак не влияли на видимую пользователем скорость отдачи страницы - вообще. Единственное, от чего они помогали  - отвал базы из-за превышения лимита на число одновременных соединений при каких-то (опять же никак не связанных с этой технологией) проблемах - моргание канала, когда разом приходит пачка где-то подзастрявших запросов, хаброэффекты или наезды ддосеров. (То есть слегка жизнь облегчали но проблема не исчезала и ее все равно приходилось решать другими способами.)

При том что сам тогдашний mysql мало что умел, и написать на нем долго работающий запрос так чтобы сразу же не получить по рукам было непросто.

Это я тебе как человек, видевший сотни подобных сайтов, говорю.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #118

111. Сообщение от Анонимный (?), 26-Ноя-21, 17:14   –1 +/
NodeJS/JS ближе к пользователю и фронту, а на PHP нормальный клиентский опыт не реализовать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #97 Ответы: #136

112. Сообщение от Gemorroj (ok), 26-Ноя-21, 17:44   +6 +/
вы живете в мире иллюзий. и путаете "дальше" со "сбоку".
php - рабочая лошадка, и именно он двигает прогресс. а смузихлебы просто кочуют по волнам хайпа порожденного глупостью и маркетологами от ИТ.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #96 Ответы: #140, #145

113. Сообщение от Gemorroj (ok), 26-Ноя-21, 17:46   +/
в специфических ситуациях именно в разы.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #109

114. Сообщение от Gemorroj (ok), 26-Ноя-21, 17:50   +/
мотивация там была - производительность. в связи с этим появился php 7 с переработанными структурами данных, за сет этого серьезно подняв производительность оригинала. hack, на данный момент, не нужен.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #69 Ответы: #152

115. Сообщение от Аноним (115), 26-Ноя-21, 18:11   –1 +/
Это в теории. А на практике поверх этого быстрого интерпретатора будет висеть Laravel, Yii или какой-то другой популярный фреймворк с кучей абстракций. А с учетом того что на PHP приложение собирается с нуля для каждого запроса и потом полностью уничтожается, то даже с включенным opcache всё это сливает в производительности, например, питоновской Джанге.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #165

116. Сообщение от YetAnotherOnanym (ok), 26-Ноя-21, 18:37   –2 +/
Прочитай ещё раз пост, на который отвечаешь, комментатор херов.
Неиспользование "persistent connection" - это не ко мне претензия. Использовать "persistent connection в PHP" - этим как раз должен был заниматься тот пыхо-г..нокодер, чьё тормозное поделие оказалось в моём ведении, и с косяками которого мне пришлось тогда разбираться.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #102 Ответы: #125

117. Сообщение от Аноним (117), 26-Ноя-21, 18:57   +2 +/
Всегда говорим потоки.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63

118. Сообщение от YetAnotherOnanym (ok), 26-Ноя-21, 19:14   –2 +/
А где я написал, что что-то сломал? Я тогда обошёлся паллиативными экстенсивными мерами - добавил мощи и подкрутил настройки.
На будущее, когда этого может оказаться недостаточно, попытался поискать кому можно было бы заказать новый сайт, но все несколько веб-студий, которые тогда были в нашем городе, были способны сделать только такое же г..но, какое у нас уже было.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #110

119. Сообщение от Аноним (119), 26-Ноя-21, 19:15   +/
Не закрывается, просто по QT кодам будет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #120

120. Сообщение от Аноним (119), 26-Ноя-21, 19:17   +/
*QR
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #119

121. Сообщение от Skynin (?), 26-Ноя-21, 19:24   +/
Семантически php сложней java уже с 5.* версии
Просто можно и сейчас писать по старому, как на 3.*, Хотя, варнингов уже будет пачка
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

122. Сообщение от Смузихлёб (?), 26-Ноя-21, 19:26   +/
> PHP 8.1 на много голов быстрее, чем PHP4.

Ты хоть в глаза видел 4 пыху, прежде чем писать подобный высер?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #101 Ответы: #129, #134, #154

123. Сообщение от Skynin (?), 26-Ноя-21, 19:27   +/
скорость разработки даже с самыми строгими правилами, со всеми фишками на php по прежнему выше чем на Java/C#
а тем более чем на С++/Rust

Поэтому - никогда на Rust не перепищется то что написано и пишется на php.
Программистов понадобится раз в 10 больше. А их, на php - дефицит

Где столько на Rust'е возьмутся?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

124. Сообщение от Смузихлёб (?), 26-Ноя-21, 19:27   +2 +/
> fpm

Не нужно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #50

125. Сообщение от onanim (?), 26-Ноя-21, 19:30   +1 +/
> Прочитай ещё раз пост, на который отвечаешь, комментатор херов.
> Неиспользование "persistent connection" - это не ко мне претензия. Использовать "persistent
> connection в PHP" - этим как раз должен был заниматься тот
> пыхо-г..нокодер, чьё тормозное поделие оказалось в моём ведении, и с косяками
> которого мне пришлось тогда разбираться.

то есть в говнокодинге виноват язык программирования, а не говнокодер.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #116

126. Сообщение от Skynin (?), 26-Ноя-21, 19:32   +/
тссс, не раскрывайте Великий Секрет вечным школьникам. пусть думают что
PHP, расшифровывающийся как "PHP: Hypertext Preprocessor", как то написано в первой строчке предисловия к докумнтации.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #104

127. Сообщение от Смузихлёб (?), 26-Ноя-21, 19:48   +1 +/
> namespace

Не нужно, как и всё ООП. Для сайтов в 99% случаев хватает процедурного программирования, а всё остальное усложнение ради усложнения.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #100

128. Сообщение от Смузихлёб (?), 26-Ноя-21, 19:50   +/
> маркетинг

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #95

129. Сообщение от Здрасьте (?), 26-Ноя-21, 20:54   +/
Я начинал с PHP3.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #122

130. Сообщение от Онаним (?), 26-Ноя-21, 21:44   +/
Ничем не лучше комментария про юникод и сишечку.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #87

131. Сообщение от Онаним (?), 26-Ноя-21, 21:50   +/
Более адекватной выглядит линейная модель задач, когда кооперативный таск выполняется линейно, как любой нормальный код, но может в любой момент сказать "я idle", и отдать управление планировщику. Или сказать "управление отдаю, но хочу вызваться на следующем цикле" - контроль за latency.

Потому что все эти event-модели в один поток сталкиваются с одним и тем же: любой тяжёлый код внутри эвента, и ваши эвенты больше за разумное время не обрабатываются. И как раз Fiber на линейную организацию кооперативных задач ложится очень хорошо.

Ожидание же эвентов, возможно более одного эвента, решается возможностью порождать дочерние задачи (промисы), которые что-то делают, например ждут этого самого ->on коллбэка, или поллят, или кофе варят, и дальше отдают исполнение основной задаче, как только что-то изменилось. Банальный WaitOn()/WaitOnAny() для набора промисов.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #80

132. Сообщение от Аноним (132), 26-Ноя-21, 23:32   +/
Вы в java указатели сколько десятилетий ждете? Там тоже enum есть, почти 20 лет как.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

133. Сообщение от Аноним (132), 26-Ноя-21, 23:35   +/
в php и раньше было расширение SplEnum
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

134. Сообщение от funny.falcon (?), 27-Ноя-21, 00:30   +1 +/
В старых php было жутко не эффективное представление array - т.е. всего. В PHP7 это поправили так, что он без JIT сравнялся с фейсбучным HipHopVM (которая была с JIT).

Так что не надо ля-ля про скорость четвёрки. Тормоз был ещё тот.

Просто во времена четвёрки ни кто не заморачивался с фреймворками. Не было подъёма и интерпретации сотен файлов.

Так а что вам мешает так же на восьмёрке писать? Напишите эквивалентный код и замерьте.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #122 Ответы: #155

135. Сообщение от funny.falcon (?), 27-Ноя-21, 00:44   +/
https://www.php.net/manual/en/function.mysql-pconnect.php

https://www.php.net/manual/en/mysqli.configuration.php#ini.m...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #98

136. Сообщение от Аноним (136), 27-Ноя-21, 01:05   +/
Избушка-избушка, повернись к лесу передом, а к пользователю задом. (Фронт на бэк, оверхед на фронт у SPA)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #111

137. Сообщение от anonymous (??), 27-Ноя-21, 01:13   +/
Не нужно не кому верить: проверьте сами. Я вот проверял.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #109 Ответы: #139

138. Сообщение от anonymous (??), 27-Ноя-21, 01:27   +/
Понятно. Makes sense.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #85

139. Сообщение от anonymous (??), 27-Ноя-21, 01:35   +/
*никому
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #137

140. Сообщение от Аноноша (?), 27-Ноя-21, 03:13   +/
> php - рабочая лошадка, и именно он двигает прогресс

Клепание сайтов на wordpress'е - двигать прогресс?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #112

141. Сообщение от Аноноша (?), 27-Ноя-21, 03:14   +1 +/
Казалось бы причем тут js
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #97

142. Сообщение от Аноним (78), 27-Ноя-21, 06:55   +/
Это удел современных программистов :( php, Qt, раст...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #86

143. Сообщение от Аноним (78), 27-Ноя-21, 06:58   +/
> реально какой то с++ получился

Может, веб-программисты от этого поумнеют хоть немного?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57 Ответы: #146

144. Сообщение от Аноним (78), 27-Ноя-21, 07:00   +/
До такого разве что растаманы могут додуматься.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106 Ответы: #150

145. Сообщение от Аноним (53), 27-Ноя-21, 07:46   –4 +/
В чем прогресс то заключается? И когда юникод завезут в твоём "прогрессивном" языке?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #112 Ответы: #148

146. Сообщение от Аноним (53), 27-Ноя-21, 07:49   +/
Если будут писать на пыхе, то точно не поумнеют
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #143

147. Сообщение от морошка ягодка такая (?), 27-Ноя-21, 08:51   +/
дотнет еще
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #96

148. Сообщение от onanim (?), 27-Ноя-21, 10:18   +1 +/
$ cat lol.php
<?php
if (extension_loaded('mbstring')) {
  echo "я умею в юникод! 👍 \n";
} else {
  echo "unikod ne zavezli :( \n";
  exit(1);
}

$rust = "🤮";
if ($rust == "💩") {
  echo "пых сила, раст могила";
} else {
  echo "раст = $rust \n";
}

$ php lol.php
я умею в юникод! 👍
раст = 🤮

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #145 Ответы: #149

149. Сообщение от onanim (?), 27-Ноя-21, 10:22   +1 +/
$ cat lol2.php
<?php
$ютф🤔="☑️";

echo "нуко ща проверим кириллицу и еможы в названиях переменных... \n";
echo $ютф🤔 ;
echo "\n";

$ php lol2.php
нуко ща проверим кириллицу и еможы в названиях переменных...
☑️

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #148 Ответы: #160

150. Сообщение от x3who (?), 27-Ноя-21, 10:54   +/
> До такого разве что растаманы могут додуматься.

Вполне законное желание для enum. Допустим у тебя в приложении есть публичные и приватные данные. Тут сам бог велел присобачить к ним (к данным) соотв флажок перечислимого типа. Раст тут ни при чем.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #144

151. Сообщение от x3who (?), 27-Ноя-21, 10:55   +/
> Потому что я могу захотеть назвать значение enum «public».

Не "public function x(...)" же.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106

152. Сообщение от Аноним (152), 27-Ноя-21, 11:04   +/
И традиционно ограниченной совместимостью - "нам ЭТО ненужно - значит, не будет реализовано". Получилось нечто что только сцукенбергу и полезно - за что макаку второй раз премировали, потомучто молодец.

То же самое с их клоном hg. Бесполезное ненужно неработающее вне закрытой сеточки сцукенберга. И даже не собирающееся. Нате жрите.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #114

153. Сообщение от anonymous (??), 27-Ноя-21, 11:34   +/
Лично меня вполне устраивает объяснение ниже.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83

154. Сообщение от Cradle (?), 27-Ноя-21, 14:28   +/
там одна из первых радикальных оптимизаций еще в 5.2 случилась, когда капитально переработали структуру внутреннего стека, дало махом прирост производительности раза в два как минимум. Давно это было, год 2010-2011 вроде, йа тогда как раз по работе в их core копался, очень веселые баги отлавливал и репортил. И мордокнига уже тогда со своим первым компилятором вылезла, тоже интересно было. Так что не надо на них балон крошить, кое-то там под капотом постоянно оптимируется. Синтаксис другее дело, постоянно их куда-то заносит, но этим у них другие ребята занимаются.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #122

155. Сообщение от Смузихлёб (?), 27-Ноя-21, 14:49   +3 +/
> Тормоз был ещё тот.

Однако вэб летал на 2-3 пнях, а сейчас вкладки хрома даже на моём i9 тормозят. Конечно, это не беда пыхи, но общая тенденция на лицо.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #134 Ответы: #156

156. Сообщение от Аноним (156), 27-Ноя-21, 15:18   –1 +/
Написали глупость и сами ее опровергли.
Это достойный поступок. :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #155 Ответы: #161

157. Сообщение от докерман (?), 27-Ноя-21, 21:53   –1 +/
а кто заставляет переходить если не надо определенных плюшек?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #86 Ответы: #158

158. Сообщение от Анонимный (?), 28-Ноя-21, 03:33   +/
end of life and is no longer supported
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #157

159. Сообщение от Gemorroj (ok), 28-Ноя-21, 10:59   +/
и правильно делают. дебилы, которые $GLOBALS удаляют (да и вообще используют) должны страдать
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #86 Ответы: #166

160. Сообщение от Ilya Indigo (ok), 28-Ноя-21, 13:19   +1 +/
Вот это лучше бы он не умел!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #149 Ответы: #163

161. Сообщение от Смузихлёб (?), 28-Ноя-21, 19:56   +1 +/
Мозга не хватает понять заложенного смысла?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #156

162. Сообщение от Онаним (?), 28-Ноя-21, 22:20   +/
Ну я могу полностью на английский перейти, но половина ж не всё поймёт.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #76

163. Сообщение от Онаним (?), 28-Ноя-21, 22:25   +/
К сожалению, частично умеет. Не потому, что хотел уметь, а потому, что ему пох на уникод.

Variable names follow the same rules as other labels in PHP. A valid variable name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thus: ^[a-zA-Z_\x80-\xff][a-zA-Z0-9_\x80-\xff]*$

Т.е. кодпоинты, все символы которых под эту маску попадают - пройдут.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #160 Ответы: #167

164. Сообщение от Онаним (?), 28-Ноя-21, 22:26   +/
Надо сказать, менее длиннющими они от неймспейсов не стали.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #100 Ответы: #168

165. Сообщение от Онаним (?), 28-Ноя-21, 22:29   +/
Угу, вот только оно целиком не упадёт, когда какой-нибудь запрос сделает что-нибудь не так.
На жабе это костылят через ловлю блохоисключений, но это такой костылинг, что лучше бы падало.
Сама прелесть independent per-request handling в том, что оно действительно independent.
Увы, кости в мозге смену парадигмы осилить многим не позволяют, отсюда и вот это всё.

С другой стороны - на пыхе можно и жабоподобные всё-в-одном-комбайны ныне кропать, но оно нужно только там, где реально нужно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #115

166. Сообщение от Онаним (?), 28-Ноя-21, 22:32   +/
$GLOBALS надо было ещё в пятёрке выкинуть.
Вот просто взять, и выкинуть. Мучений и нытья было бы гораздо меньше.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #159

167. Сообщение от Ilya Indigo (ok), 29-Ноя-21, 05:48   +/
А должно быть вот так ^[a-zA-Z_][a-zA-Z0-9_]*$, причём регистрозависимо!
Для меня, как и большинства, это и так так, но если запустить хипстера в проект то будет беда.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #163 Ответы: #169

168. Сообщение от Аноним (11), 29-Ноя-21, 07:31   +/
зато удобно
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #164 Ответы: #170

169. Сообщение от Онаним (?), 29-Ноя-21, 07:58   +/
Вообще да, я сам давно удивляюсь - на фига 0x80-0xff в этом зоопарке.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #167

170. Сообщение от Онаним (?), 29-Ноя-21, 08:00   +/
Не спорю, можно подтаскивать несколько разнородных проектов в один в виде библиотек.
Делалось-то конечно не для этого, а для возможности тянуть в рот продукты жизнедеятельности говнокомпозера, не задумываясь о содержимом, но всё равно удобно, да.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #168

171. Сообщение от Онаним (?), 29-Ноя-21, 08:03   +/
Пых на данный момент - очень удобная JIT-обёртка вокруг сишечки и библиотек на оной.
Я не удивлюсь, если он ещё лет через 10 начнёт с жабой тягаться за сегмент.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #92


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру