Павел Волынцев: а, даже так... Спасибо, занесу в визитницу) А проблема тогда в чем? В физических возможностях, так сказать?) Просто бекэнд - это самая соль, или Вам нужен фронт?
А вообще, Вы даете, такие идеи за просто так выкладываете, о моем проекте даже мать родная не знает (а вдруг), а Вы так просто, на Тостере)
А Вы, как я понимаю, не программер, и поэтому ищите программеров, кто мог бы взяться? Вы ментор, не ангел? Вообще-то довольно интересные проекты, хотя скринкасты вроде бы относительно недавно запускали, но не взлетели (хотя я могу и ошибаться). Я бы мог взяться, но у меня у самого запуск крупного проекта готовится, мне не до чего пока, поэтому я могу просто забыть, но как идею запомню. Каким образом можно записать Ваши контакты, чтобы нам не потерять друг друга?
mobi: хм... Действительно... Вы знаете, я вообще не пользую сторонние библиотеки, предпочитаю писать обвертки для дефолтных функций. Просто человек просил именно готовую библиотеку, но не предлагать писать свою, поэтому в этой ситуации было бы довольно странно предложить ему писать свой фреймворк, поэтому из самых известных является PDO, плюс еще и дефолтная, вот я и посчитал ее идеальным вариантом в этой ситуации. А вообще, писать велосипеды требуется хотя-бы для унификации, ибо та же PDO работает c сырыми текстами запросов, а это очень не гуд! Например меня типичный запрос выглядит следующим образом:
ну а для более сложных вариантов (джойны и т. д.) всегда можно пользовать сырые запросы.
Прелесть в том, что такие запросы очень легко писать, ибо они очень юзерфрендли, они уже по дефолту пропускают все значения через safesql (), ну и плюс они совершенно универсальны, то есть этот запрос может работать с любым типом БД (не обязательно релятивной, пусть хоть текстовые файлы). Это стоит того, да.
OypiStudent: код и правда хрень, но тут все синтаксически верно. Результатом выполнения запроса является id ресурса, следовательно из него нельзя вызвать какой-то метод, ибо это не объект, а ресурс. Объект - это $db (точнее $db - это переменная, которой присвоен объект MysqliDb), поэтому им и оперируют. Тут скорее всего просто инкремент висит, который считает количество строк из последнего выполненного запроса в БД. Хотя так тоже лучше не делать, MySQLi сама имеет функцию для подсчета строк из любого запроса, не только последнего, иначе если у Вас могут быть другие запросы в цикле, в котором обрабатывается результат выполнения текущего запроса - эта $db->count не будет знать что считать, так что в этом случае необходимо явно указывать ему id ресурса, с которым она будет работать.
Честно признаться не всегда разница будет видна невооруженным глазом. Нужно строить высоконагруженную систему для этого, поэтому часто легче спросить на Тостере и уже изначально писать скрипт под конкретную реализацию, а не переписывать его по мере накопления собственных знаний.
olexandr777: ну вообще просто, вы не привели ни одного внятного аргумента, все сплошные эмоции и оскорбления, но при этом просто отказались со мной продолжать разговор, назвав меня фанатиком... Ну-ну... И правда, как же можно принять аргументы из разряда "вот после этого отвечать нет смысла". Они настолько веские, что я неделю думал как бы их оспорить...
olexandr777: все еще никакой конструктивной критики... Насчет mb_ все так же какие-то общие фразы... Что за путаница с аргументами, какие названия?
Разумеется я не разрешу юзеру сунуть массив вместо цифры. Я сам сделаю его массивом в этом случае, или проверю через is_array и выдам ошибку. Однако если функция написана так, что выдает на выходе массив (собирает его в цикле или еще как-то), то с какой стати вдруг на выходе я получу строку? Или что, цикл собирал массив, а потом вдруг решил конкатенировать строки? Это вообще возможно? Вот я и говорю о том, что язык не должен быть как маленький, которому нужно все пальцем тыкать, особенно на очевидные вещи.
А код этого программера нужно смотреть, может быть он просто индусский, тогда PHP тут не причем, увольте-с. Просто одно дело когда язык не даст написать что-то неправильно, но другой вопрос когда это уже паранойя и без расстрела не сделать шага - это уже перебор. Все хорошо в меру.
GitSputnik: вы, по ходу, совсем не в теме (не в обиду), но в веб-разработке цель любого ЯП - это вывод HTML, для этого подойдет любой ЯП, поэтому естественно HTML Вы добавите, и очень не чуть-чуть.
olexandr777: а!) Хм... Значит считайте, что с горяча написал, ибо наболевшее) Действительно, проблема неоправданного усложнения имеется и актуальна. Даже и тут, простая либа как по сути, так и по кругу решаемых задач, но наверчена што мама не горюй! То есть как я понял, разраб требует создавать экземпляр класса, аргумент которого нужная строка, а потом уже из него вызывать нужные методы. И мало того, этот экземпляр можно внести в переменную и уже работать с ней, но он судя по примерам требует вводить его каждый раз. По незнанию или по какому-то убеждению - я не знаю. В данной ситуации можно было обойтись простыми функциями, а не городить из этого продукт размером с CMS. ООП очень классный и нужный, однако его не стоит сувать везде, где только можно и нельзя. Да и не стоит забывать про дефолтные аналоги функций mb_*, для работы с многобайтовыми кодировками, которым уже лет 10 как, и которые могут работать с любой мб кодировкой, не только utf8, но про наличие которых хейтеры усиленно забывают.
Некоторое время занимаюсь перепиской проекта на ActionScript (достался в наследство от прошлого прогера). Дак вот по большей части этот рефакторинг заключается в том, что я проставляю там типы значений, которые должны выводить функции в результате работы. Спрашивается, зачем? Если я сам написал эту функцию, и она должна выводить строку, или скажем ничего (void), то с какой стати она выведет например массив?! Под святым духом?! Что-то я очень в этом сомневаюсь! Что за паранойя вообще? И если я просто наслаждаюсь разработкой на PHP, так как я совершенно избавлен от такого рода фигни - почему я должен с него слезать только из-за (внимание!) бардака в исходниках? И как этот бардак сказывается на мне? Вот как? Не слишком ли слабые аргументы в свете такого рода практики?)
olexandr777: Нет, признаюсь честно, у меня не горит, ибо часто слышу нападки и иногда когда есть время стараюсь конструктивно их обсудить. И я прекрасно понимаю, какое для себя приняли решение Вы, однако мне кажется, что мы сошлись на том, что достойной его замены для веба не имеется, и такой же ад (просто где-то больше, где-то меньше) имеется в любом ЯП. А значит если например меня привлекает в нем его отличный (для меня) синтаксис и логика - то в чем проблема и почему, собссно, я не могу использовать его для ежедневной разработки? Особенно когда я даже пересел на него с плюсов (!). Не об этом ли шла речь изначально?
Да, и правда, к конце стояла точка, я просто кликнул по ссыле, просто думал Вы ее сами откуда-то скопировали с ошибкой... Посмотрел, отличная либа, но исключительно как идея. То, что сей программер под воздействием сильнодействующих веществ накалякал сию поделку - претензии исключительно к нему, очевидно PHP в такого рода изобретениях не виноват. Лично я все это просто обернул в пару-тройку обычных функций со стандартными названиями, и нет никакой необходимости городить ООП на три листа как обвертку часто только для одной (!) простенькой функции. Многие этим грешат, ибо ошибочно считают что это офигеть как круто. Однако как я уже говорил ранее - претензии исключительно к ним, увольте-с)
olexandr777: позвольте-с, Вы наверное с кем-то другим говорите. Где вы увидели у меня аргумент "Ниверю ви все врьоти!!11"? Или это просто клевета? А по сабжу - я всегда стараюсь узнать что-то новое и расширить свой кругозор, даже ни смотря на то, что я не собираюсь терять работу только из-за "ужоса с именованием и позицией аргументов" в PHP, поэтому с радостью ознакомился бы с этой информацией. О какой библиотеке идет речь, или это о его исходниках? Я одного не могу понять: в чем собссно проблема? Вы видели исходники JS или jQuery, и просто миллионы написанных для нее плагинов совершенно на каждый чих? И что-то я не вижу их ярых ненавистников. Почему? И что тогда использовать в вебе? JS? Но ведь тогда скорость упадет в разы (раз в 10), ибо он совершенно не для этого, он для свистелдок-перделок, но никак не для веба. И да, ссыль на гитхаб не рабочая...
olexandr777: В чем заключается эта "фигня"? Он не даст сложить строку с массивом, массив с объектом, а что еще надо? Проверять, чтобы юзер не сувал строку вместо числа? Дак прогоняйте все значения переменных через intval (). Обязательно нужен на входе массив? Проверяйте значение через is_array (). И так далее. Было бы желание, ни так ли?) Пока веских доводов против него я не встречал, кроме чего-то нечленораздельного типа Вашего "писец либа пхп". Иногда после такого даже хочется у человека спросить применял ли он его в бою, или просто начитался таких же авторов как он. Не, серьезно.
olexandr777: да, до этого писал на плюсах и шарпе. Лично мне это показалось сущим адом (исключительно мое имхо), да и практически все функции приходилось изобретать с нуля, увольте-с. Потом познакомился с пхп и пересел на него. На работу устраивался уже пхп-программистом. Лично меня эта логика как раз и привлекла. А то, что написали Вы - сугубо частные случаи. Самое главное для меня - не нужно тратить время на приведение типов и думать где поставить звездочку (char и char*, например). Пиши код, остальное за тебя язык сделает. Красота ведь!
А для utf8 уже множество библиотек написано, сами перешли уже года три назад, даже не заметили перехода.
А вообще, Вы даете, такие идеи за просто так выкладываете, о моем проекте даже мать родная не знает (а вдруг), а Вы так просто, на Тостере)