Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the hide-login-page domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/artem952/domains/devarts.pro/public_html/wp-includes/functions.php on line 6114

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wp-yandex-metrika domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/artem952/domains/devarts.pro/public_html/wp-includes/functions.php on line 6114
PHP — ротатор объемных кодов (переосмысление)

PHP — ротатор объемных кодов (переосмысление)

php biggest rotator - PHP — ротатор объемных кодов (переосмысление)

Изучив PHP до уровня между middle и junior и перечитывая старые статьи порой становится стыдно за тот бред, который когда-то писал. Исправление одного старого гайда по ротатору.

На этот раз исправляю вот это: Ротатор для объемных кодов на PHP

Готовые альтернативные решения

JavaScript
PHP на array_rand()

А если вы хотите стать опытным программистом на PHP, то переходите на айти-свалку и изучайте больше количество других примеров кода на php

Логичнее всего создать массив и воспользоваться функцией array_rand() (см. выше), которая сама выбирает нужный ей номер ключа массива и показывает его значение (баннер), но не в данном случае.

Данный пример для огромных кодов а-ля счетчик Liveinternet или Яндекс.Метрика, где вперемешку идут двойные и одинарные кавычки, которые просто глупо экранировать и записывать в переменную (элемент массива). Поэтому будем использовать первобытный примитив.

Мы разрываем PHP код, что дает нам возможность использовать HTML код безо всяких преображений (<<<HTML )и экранирования противоположных кавычек!

Первобытная логика

Скрипт генерирует число и согласно условию подставляет соответствующий номер.

Создаем условия для каждого из баннеров отдельно. Они обязательно должны начинаться с первого числа функции rand() (дабы не париться, пускай это всегда будет единица). Числа в условиях всегда должны идти в хронологии +1 (порядок не важен — 1,5,3,2,4, главное плотность) иначе будет показываться пустота.

Пример

Задача запустить ротатор из пяти элементов. Значит необходимо генерировать числа от одного до пяти следующей строчкой кода:

$n = rand(1, 5);

Далее необходимо обработать каждую из генераций индивидуально (написать условия для каждого из пяти чисел) следующим кодом:

if($n == 1) { ?> 

	<p>Код баннера номер один</p>

<?php }

Если этого не сделать, скрипт будет показывать пустые места для несуществующих условий для чисел, например, у нас пять условий, где мы пропустили хронологию и выставили следующие числа: 1,3,5,7,9, а скрипт генерирует 1,2,2,2,5. В таком случае получим:

  • для числа — 1 и 5 отображение того, что прописано в условиях (т.е. правильно настроено);
  • для чисел — 2 пустоту т.к. для них не прописано условие;
  • для чисел — 7 и 9 пустоту т.к. для функции задана генерация чисел от 1 до 5;

Скрипт

<?php

	# Генератор. Начало всегда с 1, конец = количеству условий
	$n = rand(1, 4);

	echo 'Сейчас сгенерировалось' . $n . 'и ему присвоилось: <br/>';

	if($n == 1) { ?> 

		<p>Код баннера номер один</p>

	<?php }

	if($n == 2) { ?> 

		<p>Код баннера номер два</p>

	<?php }

	if($n == 3) { ?> 

		<p>Код баннера номер три</p>

	<?php }

	if($n == 4) { ?> 

		<p>Код баннера номер четыре</p>

	<?php }

	# Никогда не закрывайте PHP код, т.е. ?> ставить в конце не нужно

Далее заносим скрипт в отдельный файл и подключаем на страницу. Подключение отлично расписано в предыдущей статье.

<?php include __DIR__ . '/rotator.php'; ?>

Похожие записи


SEO и внешние ссылки: три способа скрыть ссылки на другие сайты
Внешняя ссылка для SEO является нежелательны элементом на любой странице сайта. Она передает часть веса вашего сайта на тот ресурс,...
PHP — простой ротатор баннеров, ротатор для DLE и WordPress
Аналог на javascriptАналог на PHP для больших кодов Очень простой ротатор кода на PHP. Сначала мы объявляем простой двумерный массив...
Как и где лучше всего изучать программирование на языке PHP
PHP — это серверный язык программирования со своими плюсами и минусами. Его давно хоронят, но он прочно закрепился в своей...
Где найти полезные материалы для изучения языков программирования?
В современном мире практически каждый человек может ощутить на себе серьезное влияние технологий. Технические средства начинают внедряться практически во все...
Laravel — стоит ли связываться с PHP фреймворком в 2020?
Laravel — масштабный PHP фреймворк, который отлично подойдет для повышения навыков разработки на данном языке и будет хорошей альтернативой не...

Комментарии

Добавить комментарий