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

Форум PHP

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

 

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

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

тема: Вывод последних двух слов предложения
 
 автор: aleksej_sumarok   (22.02.2011 в 17:39)   письмо автору
 
 

Подскажите как можно вывести переменную $text со значением "машет ушами "


$str = 'Голова моя машет ушами';
$array = explode(" ",$str);

for($i=2; $i<count($array); $i++) {
    $text = $array[$i]." ";
}
echo $text;

  Ответить  
 
 автор: cheops   (22.02.2011 в 17:46)   письмо автору
 
   для: aleksej_sumarok   (22.02.2011 в 17:39)
 

А чем не подходит настоящий вариант? Возникают какие-то трудности на других примерах? Если да, то какие?

  Ответить  
 
 автор: aleksej_sumarok   (22.02.2011 в 17:53)   письмо автору
 
   для: cheops   (22.02.2011 в 17:46)
 

В данном варианте он выводит только значение "ушами ". А нужно чтобы выводил 2 слова "машет ушами "

  Ответить  
 
 автор: neadekvat   (22.02.2011 в 18:00)   письмо автору
 
   для: aleksej_sumarok   (22.02.2011 в 17:53)
 

$i<count($array); => $i<=count($array);

  Ответить  
 
 автор: cheops   (22.02.2011 в 18:04)   письмо автору
 
   для: aleksej_sumarok   (22.02.2011 в 17:53)
 

Понятно, вы точку забыли в операторе .=, исправьте скрипт следующим образом
<?php
  $str 
'Голова моя машет ушами'
  
$array explode(" "$str);
  for(
$i 2$i count($array); $i++) { 
      
$text .= $array[$i]." "
  } 
  echo 
$text;
?>

  Ответить  
 
 автор: aleksej_sumarok   (22.02.2011 в 18:06)   письмо автору
 
   для: cheops   (22.02.2011 в 18:04)
 

Спасибо за помощь. Работает.

  Ответить  
 
 автор: psychomc   (22.02.2011 в 17:46)   письмо автору
 
   для: aleksej_sumarok   (22.02.2011 в 17:39)
 


<?php
$str 
'Голова моя машет ушами'
$array explode(" ",$str); 
/*
for($i=2; $i<count($array); $i++) { 
    $text = $array[$i]." "; 

*/
$text $array[2]." ".$array[3];
echo 
$text

  Ответить  
 
 автор: aleksej_sumarok   (22.02.2011 в 17:55)   письмо автору
 
   для: psychomc   (22.02.2011 в 17:46)
 

Нужно именно только в цикле, я же незнаю какое значение будет у count($array)

  Ответить  
 
 автор: Trianon   (22.02.2011 в 18:08)   письмо автору
 
   для: aleksej_sumarok   (22.02.2011 в 17:39)
 

$arr = explode(' ','Голова моя машет ушами');
echo implode(' ', array_slice($arr, 2);


$arr = explode(' ','Голова моя машет ушами');
echo implode(' ', array_slice($arr, -2);

  Ответить  
 
 автор: sim5   (22.02.2011 в 18:34)   письмо автору
 
   для: aleksej_sumarok   (22.02.2011 в 17:39)
 

Если ради вывести начиная от некоего слова, и массивами, то цикла не надо, можно так:
<?
$str 
'Голова моя машет ушами';
$str explode(' '$str);
echo 
implode(' 'array_slice($str2));
Да, представляю себе такую голову )

  Ответить  
Rambler's Top100
вверх

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