Там подробная документация как делать ресайз, получать тип изображения, вставлять надписи, сохранять и еще много чего. И всё это можно сделать в пару строк кода.
На этом ресурсе не пишут код за других, это даже указано в правилах и за такие просьбы вопросы удаляют. Если что то не понятно или не получается задавайте конкретные вопросы, получите конкретные ответы.
Eka555: например, нам очень хочется делать вот так:
$validation = Validation::instance();
$validation->validate($data1, $rules);
$validation->validate($data2, $rules);
$validation->validate($data3, $rules);
$errors = $validation->getErrors(); // Все ошибки в трех наборах данных, после трех вызовов
и мы очень хотим, чтобы случайно где то не вышло так:
$validation = new Validation();
$validation->validate($data1, $rules);
$validation->validate($data2, $rules);
$validation = new Validation();
$validation->validate($data3, $rules);
$errors = $validation->getErrors(); // Ошибки только в третьем наборе данных, после третьего вызова
Eka555: не "Форм тоже может быть много", а "Валидаторов тоже может быть много". Или не может, смотря как вы реализовали. Вам надо гарантировать, чтобы был только 1 экземпляр валидации? Если будет несколько, что то сломается? Если будет только 1 экземпляр, то он рассчитан на такую работу?
Eka555: синглтон используют когда надо гарантировать что будет создан только 1 экземпляр и никак не больше. Во всех остальных случаях надо создавать новые экземпляры при необходимости.
Если у вас все синглтон, то вы не вкуирили ООП. Как у вас может быть синглтоном, например, статья на сайте, их же должно быть по определению много.
trevoga_su: пишу как есть. Руку на написании кривых велосипедов не набить. Совершенствование навыков идет в другом порядке, сначала, после изучения языка, применяются лучшие практики, потом постигаются тонкости реализации, следом вклад в открытые библиотеки, получение фидбека и только тогда опыта становится достаточно для разработки своих решений.
Этот процесс хорошо идет именно от общего к частному. А если писать кривые велосипеды, то и через год будешь писать кривые велосипеды. Единственный плюс, лучше будешь знать апи языка.
Отличный пример: ситуация которая произошла с ТС, он был уверен, что его код работает правильно и если бы не сообщение на тостере, от решившего зарегистрироваться с невалидными данными пользователя, он думал бы так дальше. И кривой велосипед жил бы неизвестно сколько времени без намека на совершенствование. ТС исправит эти баги, но не известно сколько при этом внесет новых и сколько еще останется, развития не будет до выявления следующей проблемы. Это очень медленный процесс, в котором человек приобретает мало практически полезных навыков.
> "давно программирование стало дурным тоном? Мне всегда казалось, что дурной тон - это когда человек нихера не знает, даже основ, и сразу же за библиотеки и фреймворки хватается. "
Основы - это знание синтаксиса и API языка. Они прекрасно изучаются сперва по мануалам, потом при манипулировании готовыми решениями.
В любом развитом языке высокого уровня, навыки работы с библиотеками и фреймворками для новичка ценятся в разы выше чем практика попыток самостоятельной реализации. Потому что результаты этих попыток неприменимы на практике. Сколько новичок не будет пытаться реализовать ту же систему отвечающую за регистрацию и права его код все равно не будет принят в проект. А если все чему человек смог научится - писать кривые велосипеды, то и сам он никакому проекту не нужен.
"я не хочу использовать чье то . Хочу писать все свое" - так не делают. Никогда в одиночку не достичь уровня и объема свободных инструментов и библиотек. А такой момент как регистрация/аутентификация/авторизация/.. слишком критичен, чтобы в нем могли быть ошибки новичка. Желание тут не причем, "писать свое", когда есть идеально подходящие готовые, проверенные решения - это считается не только бессмысленной тратой времени, но еще и дурным тоном.
И еще раз, "я не хочу использовать чье то . Хочу писать все свое" - представьте, что вы хотите собрать автомобиль и начинаете с... добычи железной руды, выплавки железа, изготовления стали, проектирования деталей и их отливки... Это нелепо. И уж поверьте, даже если вы используете уже готовые детали, вам все равно работы хватит заглаза.
Константин Хаиров: интересно, где, ну вот где люди умудряются научится ТАКОМУ... сейчас уже всюду полно инфы, хороших практик и готовых библиотек. Но нет, такое ощущение, что намерено пишут как можно хуже.
Используйте CMS, если не хотите программировать. Если хотите, то читайте мануал, используйте фреймворки и готовые бибилиотеки.
webquestions: ну что вы всех одним и тем же колупаете. Конкретно вопрос задайте. Есть сущность статья, если несколько объектов (список статей), то у вас будет набор этих объектов. Всеж логично.