Изменение текста в PHP - PullRequest
0 голосов
/ 05 августа 2010

Я не нашел ничего ни в Google, ни в руководстве по PHP, хотите верьте, хотите нет.Я бы подумал, что будет что-то вроде строковой операции, может быть, есть, и сегодня я просто слепой ...

У меня есть страница php, и когда нажимают кнопку, яЯ хотел бы заменить строку текста на этой странице чем-то другим.

Поэтому мне было интересно, могу ли я установить атрибут id="" для <p> на id = "что-то", а затем в моем phpкод сделать что-то вроде этого:

<?php
    $something = "this will replace existing text in the something paragraph...";
?>

Может кто-нибудь, пожалуйста, укажите мне в правильном направлении?Как и выше не работает.

Спасибо:)

ОБНОВЛЕНИЕ Я смог заставить его работать, используя следующий пример:

Поместите этот код над тегом <html>:

<?php
$existing  = "default message here";
    $something = "message displayed if form filled out.";
    $ne = $_REQUEST["name"];

    if ($ne == null) {
      $output = $existing;
    } else {
      $output = $something;
    }
?>

И поместите следующее, где бы ни отображалось ваше сообщение:

<?php echo $output ?>

Ответы [ 4 ]

2 голосов
/ 05 августа 2010

Насколько я понимаю из вашего очень нечеткого вопроса, обычно вам не нужны манипуляции со строками, если у вас есть исходные данные - вы просто заменяете одни данные другими, таким образом:

<?php
    $existing  = "existing text";
    $something = "this will replace existing text in the something paragraph...";
    if (empty($_GET['button'])) {
      $output = $existing;
    } else {
      $output = $something;
    }
?>
<html>
<and stuff>
<p><?php echo $output ?></p>
</html>

но почему бы не задать вопрос, приводящий реальный пример того, что вам нужно? вместо туманных объяснений в терминах, которые вам не нравятся?

1 голос
/ 05 августа 2010

Если вы хотите изменить содержимое абзаца без перезагрузки страницы, вам нужно будет использовать JavaScript.Присвойте абзацу идентификатор. <p id='something'>Some text here</p>, а затем используйте innerHTML для замены его содержимого.document.getElementById('something').innerHTML='Some new text'.

Если вы перезагружаете страницу, вы можете использовать PHP.Один из способов - поместить маркер в HTML, а затем использовать str_replace () для вставки нового текста.например, <p><!-- marker --></p> в HTML и $html_string = str_replace('<!-- marker -->', 'New Text', $html_string) при условии, что $ html_string содержит HTML для вывода.

0 голосов
/ 05 августа 2010

Если вы используете форму (которую я предполагаю, что вы делаете), просто проверьте, установлена ​​ли переменная (проверьте массив $_POST) и используйте условный оператор.Если условие ложно, отобразите текст по умолчанию, в противном случае отобразите что-то еще.

0 голосов
/ 05 августа 2010

Если вы ищете для обработки строк и преобразования, вы можете просто использовать функцию str_replace в php.

Пожалуйста, отметьте это: str_replace()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...