#php #variables #include
#php #переменные #включить
Вопрос:
Я пытаюсь включить свой код AdSense в переменную, подобную этой:
$ad = include_once('../adsense/ad.php');
echo $ad;
В ad.php
я делаю это:
<?php
return '<script>...</script>';
?>
Он показывает мою рекламу AsSense, но только один раз. После этого он выводится 1
. Я что-то здесь упускаю?
Ответ №1:
Вы вызвали include_once()
, поэтому файл будет включен только один раз. После этого он вернется TRUE
, потому что вызов выполнен успешно, но новое содержимое не было включено. Вместо этого используйте обычный include()
, если вам нужно использовать его несколько раз.
$ad = include('../adsense/ad.php');
Ответ №2:
используйте include
вместо include_once
. Это или вызвать только include_once
один раз 😉
Комментарии:
1. @JaredFarrish Похоже, что понижение было отменено. Возможно, неправильный щелчок
2. @Michael — Это правда, трудно сказать. Я просто хотел вставить свои 2 цента.
Ответ №3:
Я думаю, что вам может быть лучше использовать функцию для этого. Вы можете получить тот же результат гораздо более «традиционным» способом.
Использование return в include будет работать с include вместо include_once, как упоминалось в других ответах, но имейте в виду, что использование include таким образом приводит к нетрадиционным структурам кода, усложняет повторное использование, не отображается в определении списка функций, среди прочих неудобств.
Комментарии:
1. На самом деле я пытался сделать то же самое с объявлениями и показывать их только в определенное время, и я использовал переменные, но в итоге я просто использовал функции. Это сэкономит вам много времени в долгосрочной перспективе.
function echo_ad(){ include('../adsense/ad.php'); }
а затем вызвать функцию где бы то ни было, вместо того, чтобы повторять переменную