Картинки в классе. Можно ли?

391
21 декабря 2016, 04:06

есть класс

class Article
  {
   var $id;
   var $title;
   var $content;
    function __construct($id, $title, $content)
        {
           $this->id = $id;
           $this->title = $title;
           $this->content = $content;
        }
  }

Можно ли в качестве поля указать картинку? я сам догадался только до

$articleImage = new Article('7', 'Первый экземпляр с картинкой', '<img src="img/9467.jpg" alt="">');

но может можно лучше? сильно не пинать, только учусь.

Answer 1

Поля (свойства) класса - это, по сути, обычные переменные, только с нюансами в части области видимости.

Если вы вдруг знаете, как "присвоить переменной картинку", то со свойствами класса ваш метод будет работать так же. Это было лирическое отступление.

Теперь про "картинку". "Картинка", в данном контексте - это ооооооооооооочень широкое понятие, под которым можно понимать практически что угодно, например:

  • Набор байт, представляющий изображение в формате bmp
  • .... jpg

...и тут еще сотня растровых форматов...

  • Может быть это векторное изображение SVG

...пошли векторные форматы...

  • Или это всего лишь имя файла изображения на локальной ФС
  • Относительный URL на сайт
  • URL на другой сайт
  • Или это вообще ASCII-графика

и т.д.

Если рассматривать с точки зрения PHP, то наиболее вероятны и распространены два варианта использования:

  • Вывод готового изображения пользователю в браузер. Это 99.9% случаев работы с изображениями в PHP.
  • Обработка изображения с точки зрения графической информации. Обрезка, преобразование формата, нормализация, поворот, наложение эффектов и... в общем фотошоп. Это 0.09%.
  • ну и еще 0.01% на адову экзотику

Для первого, самого распространенного случая, "поле картинка" - это будет строковая переменная, содержащая ссылку на изображение, которая уже будет использоваться при генерации HTML.

Для второго случая, "поле картинка" должно предоставлять доступ к самой графической информации. Для этого в PHP предусмотрено некоторое количество расширений

READ ALSO
Как изменить внешний вид поля формы?

Как изменить внешний вид поля формы?

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

410
Нужно сделать элементы как на фото

Нужно сделать элементы как на фото

Хочу сделать элементы как на фото, а они встают друг за другом :( Знаю что inline нужно использовать, но как именно не понимаю

363
Выровнять элементы по ширине с flexbox

Выровнять элементы по ширине с flexbox

Есть 10 элементов шириной 30px нужно с применением флексбокс выровнять их по горизонтали в родителе шириной 200px чтобы получилось по 5 элементов...

415
Media Box с помощью flex

Media Box с помощью flex

Как сделать media box с помощью flexbox только не разбивать его на 2 колонки как здесь

395