2012-01-20 2 views
0

Является ли это эффективным способом преобразования URL-адреса? P = XX в отображаемый контент?ISSET и GET в PHP

<?php if (isset($p[include ($_GET['p'] . '.php')])) ?>


Другой бонус вопрос:

Я использую XAMPP, почему не могу я использовать <? или <?= теги, а не <?php и <?php echo соответственно.

+1

Можете ли вы рассказать о своем первом вопросе? Что вы подразумеваете под «эффективным способом преобразования URL-адреса? P = XX в отображаемый контент» – xbonez

+1

Можете ли вы, возможно, придумать более запоминающееся название для вашего вопроса? – deceze

+0

-blank stare. Даже как php n00b, как вы себя называете, как в мире вы можете написать это и ожидать его работы ????? –

ответ

1

Вы пользуетесь поиском этого решения?

<?php 

    if (isset($_GET['p']) && isset($p[ $_GET['p'] ])) { 
     include($_GET['p'] . ".php"); 
    } 

?> 
+0

Почему эти два вопроса? из-за любопытства, потому что я не вижу, что они там делают – jmalais

+0

Когда я интерпретирую ваш код (что ужасно неправильно;)) правильно, вы пытаетесь выяснить, установлен ли _GET ['p'], и если значение из _GET ['p'] задается как ключ в массиве $ p. Если это так: укажите файл, на который ссылается значение. Эти оба теста выполняются с помощью isset. – zaphod1984

+0

Я не знаю, почему это сработало, но это работало для меня. Я не думал, что это выглядело правдой, хотя. Итак, первый isset видит, что URL-адрес содержит что-либо для «? P =», а второй isset ищет, имеет ли он назначенное значение? У меня нет $ p. --- В принципе просто хочу, чтобы значение p-url было преобразовано в имя файла и включено. Мне все еще нужны оба этикета? – jmalais

1

Я могу ответить на ваш вопрос о бонусе.

<? и <?= только работайте, если у вас есть shorttags. Вы все равно не должны их использовать. Когда-либо. Узнайте, что сейчас, пока вы все еще можете.

+0

То же. Никогда не используйте короткие теги. ' rdlowrey

+0

Еще более запутанным является то, почему '<%' допустимо как открывающий тег PHP ... –

+0

Сохранено из-за плохой привычки ... спасибо. – jmalais

1

Существует множество способов обработки того, что вы хотите сделать. Обычным было бы хранить информацию, такую ​​как идентификатор страницы или имя в базе данных, а затем взять переменную p, которую вы вытаскиваете из заголовка, и захватить нужные данные.

Также найдите файл php.ini (\ xampp \ php) и включите short_open_tag.

Как нет, это не очень хорошая идея, так как не все серверы, на которых может быть настроен код, будут поддерживать короткие теги. Поэтому, если вы хотите мигрировать, у вас будет довольно много работы перед вами.

Смежные вопросы