Форум программистов, компьютерный форум, киберфорум
Php
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
Старый
Реализация DI в PHP
Запись от Jason-Webb размещена 13.05.2025 в 20:50 / Webmastering PHP
Показов 3894 Комментарии 0
Метки di, laravel, oop, php, solid, symfony

Нажмите на изображение для увеличения
Название: b67dda7b-41e4-4393-ad8c-41a1d7abf938.jpg
Просмотров: 199
Размер:	72.4 Кб
ID:	10804
Когда я начинал писать свой первый крупный PHP-проект, моя архитектура напоминала запутаный клубок спагетти. Классы создавали другие классы внутри себя, зависимости жостко прописывались в коде, а о замене реализации и говорить не приходилось. Мысль о том, чтобы написать нормальные юнит-тесты,...
Аватар для Jason-Webb
Старый
Рейтинг: 5.00. Голосов: 1.
Аутентификация и авторизация в Laravel API с OAuth2 и Passport
Запись от Jason-Webb размещена 10.05.2025 в 16:45 / Webmastering PHP
Показов 3178 Комментарии 0

Нажмите на изображение для увеличения
Название: 960715e6-3c2d-4898-b512-d69ddc679b43.jpg
Просмотров: 179
Размер:	39.2 Кб
ID:	10783
В веб-разработке ситуация с безопасностью API напоминает игру в кошки-мышки, где злоумышленники постоянно изобретают новые методы взлома, а разработчики отчаянно пытаются остаться на шаг впереди. Особенно остро эта проблема стоит с Laravel API, когда речь заходит о передаче...
Аватар для Jason-Webb
Старый
Продвинутые техники работы с Laravel Eloquent
Запись от Jason-Webb размещена 02.05.2025 в 22:33 / Webmastering PHP
Показов 4694 Комментарии 0
Метки eloquent, laravel, php

Нажмите на изображение для увеличения
Название: f749dfd7-9ffa-49c8-ac89-078a9a306510.jpg
Просмотров: 163
Размер:	190.2 Кб
ID:	10720
За годы своей практики я наблюдал интересную закономерность: разработчики, освоившие базовые приемы Eloquent, часто застревают на этом уровне. Они умеют создавать модели, определять отношения, выполнять типичные CRUD-операции. И казалось бы, чего ещё желать? А потом наступает момент истинны — проект растет, база...
Аватар для Jason-Webb
Старый
Оптимизация производительности PHP с помощью OPcache
Запись от Jason-Webb размещена 02.05.2025 в 13:58 / Webmastering PHP
Показов 2993 Комментарии 0
Метки docker, opcache, php

Нажмите на изображение для увеличения
Название: 110fda2a-8414-42fd-aca4-773afd99ce9c.jpg
Просмотров: 131
Размер:	174.8 Кб
ID:	10712
Для PHP-приложений, которые питают значительную часть современного интернета, производительность зачастую становится ахиллесовой пятой. Именно здесь выходит OPcache — мощное расширение, кардинально меняющее правила игры в оптимизации PHP.

OPcache — это встроеный механизм кеширования байткода, который идёт вместе с PHP начиная с версии 5.5.0. Его задача обманчиво проста:...
Аватар для Jason-Webb
Старый
Создаем RESTful API с Laravel
Запись от Jason-Webb размещена 28.04.2025 в 22:08 / Webmastering PHP
Показов 5172 Комментарии 0
Метки docker, http, laravel, php, rest api

Нажмите на изображение для увеличения
Название: 941b8d16-32cb-45a4-8436-f01b9452667a.jpg
Просмотров: 136
Размер:	180.5 Кб
ID:	10691
REST (Representational State Transfer) — это архитектурный стиль, который определяет набор принципов для создания веб-сервисов. Этот подход к построению API стал стандартом де-факто в современной веб-разработке благодаря своей простоте и эффективности. RESTful API используют стандартные HTTP-методы для взаимодействия с ресурсами, представленными в виде URL, что делает их интуитивно понятными для разработчиков.

Принципы REST и их значение



Основные...
Аватар для Jason-Webb
Старый
Создаем веб-приложение на Vue.js и Laravel
Запись от Reangularity размещена 23.04.2025 в 16:02 / Vue/React/Angular/Svelte notes
Показов 3722 Комментарии 0

Нажмите на изображение для увеличения
Название: 77a006df-3c29-4934-9cc4-7a46f0493e20.jpg
Просмотров: 159
Размер:	201.9 Кб
ID:	10633
Выбор правильного технологического стека определяет успех веб-проекта. Laravel и Vue.js формируют отличную комбинацию для создания современных приложений. Laravel — это PHP-фреймворк с элегантным синтаксисом и обширным набором инструментов для бэкенда. Vue.js — прогрессивный JavaScript-фреймворк, который упрощает создание динамичных пользовательских интерфейсов. Объединение этих технологий...
Аватар для Reangularity
Старый
MVC фреймворк в PHP
Запись от Jason-Webb размещена 19.04.2025 в 20:23 / Webmastering PHP
Показов 3658 Комментарии 0
Метки mvc, mvvm, php

Нажмите на изображение для увеличения
Название: 7990b23d-2eae-4efc-b92b-0611f35d82a8.jpg
Просмотров: 182
Размер:	175.5 Кб
ID:	10618
Архитектурный паттерн Model-View-Controller (MVC) – это не просто модный термин из мира веб-разработки. Для PHP-программистов это фундаментальный подход к организации кода, который радикально меняет структуру проектов и процесс их разработки. Сегодня практически невозможно представить серьезный PHP-проект без применения...
Аватар для Jason-Webb
Старый
Работа с железом в PHP Laravel с Pinout
Запись от Jason-Webb размещена 16.04.2025 в 11:22 / Webmastering PHP
Показов 2603 Комментарии 0

Нажмите на изображение для увеличения
Название: 8472c9d0-a83d-4888-82d3-501fb30b42f1.jpg
Просмотров: 126
Размер:	193.5 Кб
ID:	10598
Граница между программным и аппаратным миром стремительно размывается. Современные веб-приложения уже не ограничиваются цифровым пространством — они активно взаимодействуют с физическими устройствами. Эта тенденция породила спрос на инструменты, способные соединить привычные веб-фреймворки с миром электроники. В экосистеме Laravel таким мостом стала библиотека Pinout. Pinout — это пакет для Laravel, который позволяет веб-разработчикам...
Аватар для Jason-Webb
Старый
Vue SFC компонент на PHP с Fusion
Запись от Jason-Webb размещена 09.04.2025 в 22:23 / Webmastering PHP
Показов 2425 Комментарии 0
Метки fusion, php, vue

Нажмите на изображение для увеличения
Название: 34823801-6a6a-431a-ae13-fa39e21bc3e5.jpg
Просмотров: 134
Размер:	169.6 Кб
ID:	10568
PHP на сервере и JavaScript на клиенте — классическое сочетание, которое, несмотря на свою эффективность, создает определенный когнитивный диссонанс при разработке. В этом контексте появляются различные решения, пытающиеся сгладить этот разрыв, и одним из таких революционных подходов стал Fusion.

Fusion — это новый инструмент, представленный в феврале 2025 года на конференции Laracon EU, который позволяет писать PHP-код непосредственно в Vue SFC (Single File...
Аватар для Jason-Webb
Старый
Мониторинг с Prometheus в PHP
Запись от Jason-Webb размещена 04.04.2025 в 16:43 / Webmastering PHP
Показов 2966 Комментарии 0
Метки grafana, php, prometheus

Нажмите на изображение для увеличения
Название: 288a5bc8-1bec-4ee5-9110-c5888383c9ab.jpg
Просмотров: 147
Размер:	92.1 Кб
ID:	10522
Prometheus выделяется среди других систем мониторинга своим подходом к сбору и хранению метрик. В отличие от New Relic, который использует агентный подход и отправляет данные во внешнее хранилище, Prometheus сам опрашивает приложения через HTTP-endpoints. Такой метод даёт гибкость...
Аватар для Jason-Webb
Старый
Криптография в PHP
Запись от Jason-Webb размещена 20.03.2025 в 08:06 / Webmastering PHP
Показов 1553 Комментарии 0
Метки cryptography, php

Нажмите на изображение для увеличения
Название: 1a74242c-f786-4307-a196-a9261a770e55.jpg
Просмотров: 121
Размер:	204.3 Кб
ID:	10469
PHP предоставляет много криптографических возможностей: от встроенных функций хеширования до полноценных библиотек шифрования — арсенал средств довольно обширен. Но всё это бесполезно без понимания правильного применения.

Знаете ли вы, что недостаточно...
Аватар для Jason-Webb
Старый
Реализация паттерна CQRS с Event Sourcing в PHP
Запись от Jason-Webb размещена 19.03.2025 в 08:11 / Webmastering PHP
Показов 1430 Комментарии 0
Метки cqrs, event sourcing, php

Нажмите на изображение для увеличения
Название: 22b6a19b-e993-4e7a-a742-b3fceb4aa760.jpg
Просмотров: 150
Размер:	170.3 Кб
ID:	10454
CQRS (Command Query Responsibility Segregation) — это архитектурный паттерн, который разделяет операции чтения и записи данных в приложении. Если вы столкнулись с ситуацией, когда ваше PHP-приложение начинает "задыхаться" под нагрузкой, или модель данных стала настолько сложной,...
Аватар для Jason-Webb
Старый
Лучшие PHP REST API фреймворки
Запись от Jason-Webb размещена 15.03.2025 в 10:11 / Webmastering PHP
Показов 2471 Комментарии 0

Нажмите на изображение для увеличения
Название: 0ae4deaa-769e-4e4f-8fb5-c353f7028720.jpg
Просмотров: 156
Размер:	272.5 Кб
ID:	10408
Современные PHP REST API фреймворки предлагают большой набор функциональности: от автоматической валидации данных и управления маршрутизацией до генерации документации и интеграции с различными системами аутентификации. Некоторые из них являются полноценными экосистемами с богатым набором инструментов, другие - легковесными решениями, ориентированными на скорость и гибкость.

В этой статье мы разберём наиболее популярные фреймворки для создания REST API на PHP,...
Аватар для Jason-Webb
Старый
Разработка на PHP и интернет вещей (IoT)
Запись от Jason-Webb размещена 14.03.2025 в 16:14 / Webmastering PHP
Показов 1595 Комментарии 0

Нажмите на изображение для увеличения
Название: b9b618eb-b73c-4a3c-8868-161e18ff035c.jpg
Просмотров: 133
Размер:	184.3 Кб
ID:	10397
Интернет вещей (IoT) произвел настоящую революцию в способах взаимодействия устройств с окружающим миром. В эпоху, когда холодильники сами заказывают молоко, а термостаты учатся вашим привычкам, создание экосистемы для умных устройств становится важной задачей. И тут в игру может неожиданно вступить PHP — язык, который многие считают "динозавром" веб-разработки.

Когда речь заходит об IoT, первыми на ум приходят языки вроде Python, C++ или JavaScript....
Аватар для Jason-Webb
Старый
PHP 8: JIT-компиляция и улучшение производительно­сти
Запись от Jason-Webb размещена 13.03.2025 в 08:54 / Webmastering PHP
Показов 2447 Комментарии 0
Метки jit, php, php 8

Нажмите на изображение для увеличения
Название: 400c242d-86b7-4b89-8b7f-449ac5ce27d4.jpg
Просмотров: 135
Размер:	195.3 Кб
ID:	10380
PHP никогда не славился своей скоростью. Многие сталкивались с проблемами производительности при работе со сложными вычислениями или обработкой больших объемов данных. Традиционная модель выполнения PHP-кода через интерпретацию имеет свои ограничения, которые становились особенно заметны в CPU-интенсивных задачах. До появления PHP 8.x мы были вынуждены прибегать к различным хитростям: использовать внешние библиотеки на C/C++, переписывать критические...
Аватар для Jason-Webb
Старый
Рейтинг: 5.00. Голосов: 1.
если в Yii2 у пагинации слетает стиль
Запись от and_y87 размещена 12.05.2024 в 14:04
Показов 1138 Комментарии 0
Метки pagination, php, style, yii2

Довольно часто сталкиваюсь с проблемой в Yii2: с пагинации слетает стиль

Чиню таким образом:
в файл backend\config\main.php добавляю ключ `container` в котором ключ `singletons` содержащий настройки для переопределения классов:
PHP
1
2
3
4
5
6
7
8
<?php
 
use yii\widgets\LinkPager;
 
$params = array_merge(
    require __DIR__ . '/../../common/config/params.php',
    require __DIR__ . '/../../common/config/params-local.php',
    require __DIR__
...
Аватар для and_y87
Develo0per
Старый
Рейтинг: 5.00. Голосов: 1.
Как жадная загрузка в Yii2 помогла мне оптимизировать рендер тяжелой страницы
Запись от long399 размещена 12.10.2023 в 10:00 / Блог форумчанина long399
Показов 1374 Комментарии 0
Метки php, xhprof, yii2

Столкнулся на работе с одним разделом сайта, в котором выводится несколько огромнейших таблиц. Использовать пагинацию там нельзя, так как данный раздел проверяется Рособрнадзором (выполняется автоматический мониторинг специальных тегов разметки), и все данные должны быть...
Аватар для long399
Модератор
Старый
Рейтинг: 3.00. Голосов: 2.
Разработка API в Yii2. Проблемы с загрузкой файлов методом PUT
Запись от long399 размещена 15.05.2023 в 06:36 / Блог форумчанина long399
Показов 1509 Комментарии 0
Метки api, php, rest api, yii2

Недавно столкнулся с проблемой при разработке API в Yii2, которую удалось решить. Хотелось бы поделиться. Возможно, у кого-то возникнет аналогичная проблема и ему поможет это решение.

В моем API происходит работа с файлами. Клиент отправляет запросы на создание, редактирование и удаление диссертаций. Помимо атрибутов диссертации, которые сохраняются...
Аватар для long399
Модератор
Старый
Рейтинг: 5.00. Голосов: 2.
Пример модального окна с плюшками
Запись от mr_dramm размещена 27.06.2022 в 02:33
Показов 1642 Комментарии 10
Метки html, php

пример модального с предотвращением изменения ширины содержимого когда scrollbar скрыт
и предотвращением scroll когда окно активно
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!DOCTYPE html>
<html>
 
<head>
    <style>
    * {
        padding: 0;
        margin: 0;
        box-sizing: border-box;
    }
 
    body {
        transition: width .2s;
        position: relative;
    }
 
    .sticky {
...
Аватар для mr_dramm
Молодой техлид)
Старый
Рейтинг: 5.00. Голосов: 2.
Yii2 formatter для вывода числительных
Запись от long399 размещена 31.05.2022 в 11:26 / Блог форумчанина long399
Показов 1074 Комментарии 0
Метки php, yii

Столкнулся недавно с необходимостью вывода чисел прописью. Да еще и род нужно было учитывать. Удалось это реализовать следующим образом:

PHP
1
2
3
4
5
6
7
// форматтер для чисел прописью
$numberFormatter = new \NumberFormatter('ru', \NumberFormatter::SPELLOUT);
 
$n = 101;
 
// числительное мужского рода
$numberFormatter->setTextAttribute(\NumberFormatter::DEFAULT_RULESET, "%spellout-cardinal-masculine");
...
Аватар для long399
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Captcha с математическими выражениями
Запись от long399 размещена 16.08.2021 в 08:16 / Блог форумчанина long399
Показов 3398 Комментарии 0
Метки captcha, php, yii, yii2

Написал небольшой класс для приложения на Yii2, который расширяет стандартный yii\captcha\CaptchaAction. С его помощью мы сможем использовать captcha, в сгенерированном тексте которой будет прописано математическое выражение, вместо обычного текста. Для успешной отправки формы требуется ввести ответ на математическое выражение.

Нажмите на изображение для увеличения
Название: captcha.png
Просмотров: 1257
Размер:	4.9 Кб
ID:	7084

Список доступных операций:
1) Вычитание.
2) Сложение.
3) Умножение....
Аватар для long399
Модератор
Старый
Рейтинг: 3.00. Голосов: 2.
Расширенный виджет LinkPager в Yii2
Запись от long399 размещена 09.08.2021 в 11:06 / Блог форумчанина long399
Показов 3440 Комментарии 0
Метки php, yii

Возникла следующая проблема. Имеется один проект на Yii2, в котором на индексной странице выводится очень много записей. Стандартный пейджер, в котором можно задать дополнительно ссылки на первую и последнюю страницы уже не спасает положение.

Написал небольшой виджет, который расширяет стандартный \yii\widgets\LinkPager и предоставляет возможность добавить к пейджеру дополнительные блоки:
  • dropdown list со списком всех возможных переходов;
  • dropdown
...
Аватар для long399
Модератор
Старый
Рейтинг: 3.00. Голосов: 2.
Рекурсивный обход каталога в PHP
Запись от long399 размещена 09.01.2020 в 11:51 / Блог форумчанина long399
Показов 2075 Комментарии 0
Метки php

Недавно на работе возникла необходимость получения содержимого определенного каталога, назовем его dir. Это подразумевает также и рекурсивное получение содержимого всех каталогов, находящихся внутри каталога dir, например dir/dir1, dir/dir2 и т.д.

Не хотелось реализовывать это стандартными средствами ( opendir(), readdir(), closedir() ) и писать рекурсивную функцию обхода дерева каталогов, поэтому полез в интернет...
Аватар для long399
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Реализация безопасного логического И, ИЛИ, в языке PHP; проверено на PHP 5.3.18
Запись от elnorbert размещена 25.08.2019 в 17:57
Показов 1812 Комментарии 0

Реализация безопасного логического И, ИЛИ, в языке PHP; проверено на PHP 5.3.18

автор реализации способа безопасной логики не берет на себя ответственность за возможное не корректное функционирование применяемое в коде!

В соответствии с документацией по PHP, сборки 2018-10-01, говорится:

Руководство по PHP > Справочник языка > Операторы > Логические операторы:

Пример #1 Объяснение логических операторов

PHP
1
<?php
...
Старый
Рейтинг: 5.00. Голосов: 1.
[Ещё один ман] Настройка nginx+uwsgi+php
Запись от Рыжий Лис размещена 10.07.2019 в 12:04
Показов 2311 Комментарии 0
Метки nginx, php, uwsgi

Неужели ты не осилил установить php-fpm (fastcgi)?

Bash
1
apt install uwsgi-plugin-php php-xml php-mbstring php-pgsql
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
server {
  …
  root /var/www/example;
  index index.php index.html index.htm index.nginx-debian.html;
 
  location / {
    try_files $uri $uri/ =404;
  }
  
  location ~ \.php {
    include uwsgi_params;
    uwsgi_modifier1 14;
    uwsgi_pass unix:///run/uwsgi/app/example/socket;
...
Аватар для Рыжий Лис
Просто Лис
Старый
Функция для распаковки GitHub архивов
Запись от N3stY размещена 15.02.2017 в 16:31
Показов 3289 Комментарии 0
Метки github, php, simpledeveloping

Небольшая функция которая поможет вам распаковывать архивы из GitHub

PHP
1
2
3
4
5
6
7
function dgarch($repo=false, $dir=false, $temp=false, $rmarch=true)
{
  /*
    $repo     -> Ссылка на репозиторий
    $dir       -> Папка куда распаковывать архив
    $temp    -> Временная папка для хранения архива
    $rmarch -> Удаление архива по окончании операции
...
Аватар для N3stY
(ノಠ益ಠ)ノ彡┻━┻
Старый
Рейтинг: 5.00. Голосов: 1.
Пример простейшего калькулятора на PHP без перезагрузки страницы (чистый Ajax, без jQuery и других библиотек)
Запись от ProCode размещена 30.01.2017 в 19:05
Показов 3203 Комментарии 4

Привет. Это, в каком-то смысле, продолжение креатива Исполнение PHP-скрипта без перезагрузки страницы и без знания JavaScript(!) - Xajax но здесь я решил не использовать сторонние библиотеки вовсе, а сделать образец "чистого" Ajax для тех, кто только начинает знакомиться с этой технологией.

Это наверное самый простой образец применения Ajax из возможных Скрипт принимает от пользователя 2 числа, и выводит ему их вычисленную сумму. И всё это - без перезагрузки...
Аватар для ProCode
Старый
Самая частая ошибка новичка в PHP и как легко её избежать
Запись от ProCode размещена 15.12.2016 в 18:22
Показов 4597 Комментарии 14

Уверен, каждый из нас хоть единожды, да писал что-то вроде

PHP
1
2
if($somevar = 1) {
//код который почему-то всегда исполняется...
а потом долго ломал голову: почему же код работает так, будто условие всегда верное.

Это, разумеется, происходит от вольной или невольной путаницы между оператором присваивания...
Аватар для ProCode
Старый
Пути-дороги, или "как правильно подключить меню через include()" :)
Запись от Киберсемантика размещена 04.10.2016 в 22:07
Показов 2070 Комментарии 0

По мотивам вопросов в "PHP для начинающих" на Киберфоруме.

Часто бывает так, что какую-то часть кода в проекте удобнее вынести в отдельный файл, который затем подключать к основному коду по мере необходимости. Допустим, это уже сверстанное меню, которое лежит в файле menu.php, и которое мы включим в наш index.php так:

PHP
1
<?php include "menu.php"; ?>
При этом, обратите внимание, что оба файла лежат...
Старый
Github Atom: заставить разворачиваться конструкцию emmet-а “div.class” по табуляции в php файлах
Запись от fol размещена 07.09.2016 в 11:19
Показов 7498 Комментарии 0
Метки atom, emmet, html, php

Для тех, кто пользуется Emmet-ом в Atom.

Дело в том, что в html файлах отрабатывает:
Code
1
div.some-class
преобразовывается в
Code
1
<div class="some-class"></div>
при нажатии табуляции, когда курсор стоит в конце конструкции, а в php файлах такая система не работает. Итак, как заставить это работать в php файлах?

=======

В конфигурации горячих клавиш Emmet по умолчанию про Tab написано следующее:

Code
1
'atom-text-editor[data-grammar="text
...
Аватар для fol
fol
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru