Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вырез тегов и перенос в массив
 
 автор: Alexx   (18.09.2006 в 16:22)   письмо автору
 
 

Есть контент

<form name="form1" method="post" action="">
 Ваше имя:<input name="name" type="text" value="">
 Ваше отчество:<input name="name2" type="text" value="">

</form>


Надо вырезать name="это" и value=""

И сделать такой массив ("name" => "value", "name2" => "value");

p.s. количество текстовых полей может быть неограниченно.

Дополнение нашёл как выташить input
тоже самое надо сделать только с textarea

$pattern = '|<input[^>]+name="'.$name.'"[^>]+>|is';

   
 
 автор: cheops   (18.09.2006 в 19:36)   письмо автору
 
   для: Alexx   (18.09.2006 в 16:22)
 

Можно поступить следующим образом
<?php
  $text 
'<form name="form1" method="post" action=""> 
 Ваше имя:<input name="name" type="text" value="sdsfsdfsdf"> 
 Ваше отчество:<input name="name2" type="text" value="dsfdsfdsf"> 
</form>'
;
  
$pattern "#<input.*?name=\"([^\"]+)\".*?value=\"([^\"]+)\"#is";
  
preg_match_all($pattern$text$out);
  for(
$i 0$i count($out[1]); $i++)
  {
    
$arr[$out[1][$i]] = $out[2][$i];
  }
  echo 
"<pre>";
  
print_r($arr);
  echo 
"</pre>";
?>

   
 
 автор: Alexx   (30.11.2006 в 20:48)   письмо автору
 
   для: cheops   (18.09.2006 в 19:36)
 

А как сделать чтобы в массив ещё добовлялся код самого текстового поля

Например
<input name="name" type="text" value="sdsfsdfsdf">

   
 
 автор: cheops   (30.11.2006 в 22:52)   письмо автору
 
   для: Alexx   (30.11.2006 в 20:48)
 

Замените строку
<?php
 $arr
[$out[1][$i]] = $out[2][$i];
?>

на
<?php
 $arr
[$out[1][$i]] = $out[0][$i];
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования