https://github.com/MouseZver/Lerma/blob/master/README.md + composer require aero/lerma=dev-master dev-Wiki
Если в PDO устанавливаешь кодировку UTF-8, то логичней сделать и для обертки mysqli. Не вижу этого... не хорошо а вообще харкодить как то не хорошо... пусть изменяемым параметром будет. а что бы еще не говнокодить то вынес бы UTF-8 значение в дефолтную константную переменную интрерфейса и оттуда бы подтягивал если иное не передано пользователем.
@smitt самой главной кодировкой базы данных MySQL является UTF-8. У лермы реализовано внутреннее подключение к базе данных, мы сразу начинаем использовать query/prepare. 2 вопроса кроме юникода, какими кодировками пользуешься при использовании mysqli ? и где ?
Какая кодировка главная решает админ базы) захочет и поменяет) А как это связано с захаркоденым значением? Проблема в том что у тебя дырявая реализация. В одном случае ты явно указываешь кодировку в другом случае надеешься на удачу и правильно настроенный сервер. + надо писать так что бы у пользователей была возможность значение поменять без редактирования твоего творения. Стараюсь везде использовать юникод что бы без гемора жить.
Для этого существует https://github.com/MouseZver/Lerma/blob/master/src/Lerma/Configures/Lerma.php php на utf-8, а база в другой кодировке ? не вижу смысла.
и где настраивается кодировка? Чувак, в одной обертке ты захаркодил кодировку, что уже не очень гуд, во второй даже не почесался. Они не равнозначны. О чем спор? не понимаю. Ну оставляй тогда раз не видишь. Все равно никто использовать не будет) Для инфо: https://php.ru/manual/mysqli.set-charset.html https://php.ru/manual/mysqlinfo.concepts.charset.html З.ы. Админы, отключите редирект на форум с ссылок
Это проклятие обходится удалением расширения ссылок, или же до php.ru добавить secure. Но мне кажется ты сам об этом знаешь))
Бугага, ты ставишь UTF-8 для mysqli, порыл код) drivers/mysqli.php а не Configures/Lerma.php Захардкодено((( совет - вынеси в интерфейс. UFT-8 дефолтное значение для всех драйверов, пусть будет в 1 месте.
@smitt мне бы хотелось увидеть лично твой достойный аргумент по вопросу - зачем вовсе ставить различные кодировки для MySQLi, нежели Only UTF-8 А пока лишь из-за неизменяемой кодировки, называть захаркордом глупо с твоей стороны. --- Добавлено --- httpS://php.net
@MouseZver дык тебя, мы тут обсуждаем надо в UTF-8 переводить или нет? Мне не нравится что ты захордкодил параметры которые МОЖНО менять. На сколько помню проблема возникает не со всеми кодировками. Если захотят, будут использовать другую кодировку а не UTF. Если можно менять, то должен быть способ это сделать без ковыряния кода. Ты даже в свой конфиг Lerma.php не вынес параметр. С точки зрения реализации тоже не гуд. У тебя есть интерфейс который ты не используешь полностью. Там можно описывать не только методы, еще можно указывать константы. Расшаришь дефолтное значение для всех кто реализует интерфейс.
Это твой достойный аргумент ? --- Добавлено --- Все нормальные люди пишут php код в кодировке UTF-8 no BOM, а значит и подключение должно быть Only UTF-8 --- Добавлено --- да и по большому счету, тут пинают за использование левой кодировки при подключении --- Добавлено --- а еще магические методы, рефлектория, и т.д. Я кину палку в продаваемые цветы, а продавщица будет подавать в суд на палку за ущерб имущества.
В интернете не единый пользователь не смог конвертнуть бд и поделиться со всеми знаниями --- Добавлено --- больно смиту
Давай еще раз) 1. Правила хорошего кода говорят что хардкодить плохо. Ты захардкодил кодировку. 2. Ты пишешь обертку для драйверов при этом лишаешь пользователей возможность конфигурировать драйвер без ковыряния твоего кода. Этот charset еще раз МОЖНО менять. Будут менять или нет - не твоя проблема. Ты ограничил функционал. Как еще объяснить, не понимаю... Это плохо. Это не понравится не только мне но и другим. ИМХО. Здесь идет речь не о правильности использования параметра а об твоем искусственном ограничении. 3. Посмотри как реализованы нормальные обертки Doctrine - раздел Custom Driver Options https://www.doctrine-project.org/projects/doctrine-dbal/en/2.7/reference/configuration.html или ваш любимый ларавел. Вынесено в общий конфиг, но параметр кастомизируется. Поэтому я предлагаю 1. перенести в интерфейс дефолтое значение и дать возможность выбирать - тем ты улучшишь свой код 2. Как вариант сделать общий конфиг как в ларавеле. Я - у тебя захардкоден параметр. Ты - у меня магические методы и я ковыряюсь в носу. Мне не больно, мне интересно когда дойдет что я тебе пишу)))
Все знают что можно , вот только не вижу аргумента твоего "зачем" НЕТ Это не факт После обновы действительно будет лучше --- Добавлено --- Давай по русски - не захардкоден / захаркоден, а параметр был опущен из-за лишнего движения.
Т.е. вынос общих настроек на уровень вверх, когда дефолтный параметр для всех драйверов настраивается в 1 месте - ухудшит код?))) Мдэ... Ок, обновляйся. З.ы. я ж не говорю что ты плохо пишешь и код твой отстой. Не понимаю причину спора, я лишь попытался указать на недостаток небольшой.... Помогай потом людям((( И где указано что твой вариант правильный?) Мой ближе к первоисточнику, у тебя захар коден. Захары обидятся((( --- Добавлено --- --- Добавлено --- читай жирным выделенный текст. Специально старался.Если драйвер поддерживает, то и обертка должна позволять его настраивать. Зачем будут так делать не твоя проблема. Мы не обсуждаем зачем менять или не менять, мы обсуждаем твою текущую реализацию.
https://php.ru/forum/threads/66098/page-2#post-573992 Хотя бы почитал что пишешь в своих постах. Спойлер: Детский сад Не увидел жирных аргументов. Офф.
Бугага, теперь у меня чувство что я с дебилом общаюсь) Отвечаю еще раз Ты захардкодил параметр который можно менять. Твоя обертка ограничивает функционал драйвера. Поэтому твой вариант плох. Какой тебе аргумент нужен? Потому что принято ставить параметр UTF-8 теперь надо ограничивать функционал? Я тебе привел ссылку как реализовано у других. Зачем ты херней сейчас страдаешь? Я не собираюсь рассуждать правильно или нет использовать что то вместо UTF-8. Не надо перепрыгивать на другую тему. Обсуждаем твою реализацию. В твоей есть косяк. Дебил? Зачем передергиваешь слова? Ты утверждаешь что Я пишу что захардкоден правильней. Ну опечатался пару раз написал захаркоден, и что? Давай доказательства раз такой умный что утверждаешь захардкоден надо)))
Яшетаю @smitt дело говорит. Тебе всего лишь надо выпустить обновления, и все. Тогда Васе пупкину не придется конертировать свою бд прежде чем юзать твою либу
Я кстати тоже @smitt поддерживаю. Ну или не выкладывать в паблик. Проекты игнорирующие pr это жжесть. (накипело)