|
|
|
|
|
для: Shorr Kan
(20.11.2008 в 16:09)
| | explode вообще не удобно.... а если там "Война и Мир" ? | |
|
|
|
|
|
|
|
для: kis-kis
(20.11.2008 в 13:15)
| |
<?
$dn=3; //номер точки
$pos=0;
for($i=0;$i<$dn;$i++){
$pos=strpos ($text,'.',$pos+1);
}
if($pos===false){$pos=strlen($text);}
echo substr($text,0, $pos+1);?>
|
чёт типа того... | |
|
|
|
|
|
|
|
для: AcidTrash
(20.11.2008 в 16:12)
| | Все это отражено во фразе "В третьем параметре у strpos - это символ, а не вхождение". | |
|
|
|
|
|
|
|
для: AcidTrash
(20.11.2008 в 15:58)
| | Теперь объясню, почему до первой точки.
Сначала работает функция strpos, которая в данном случае ищет позицию первого вхождения точки начиная со второго символа, находит ее. В данном случае позиция точки дальше чем вы задали откуда искать, следственно позиция отсчитывается о начала строки. Далее в функцию substr() третьим параметром попадает как раз позиция до первой точки и следственно остаётся текст до первой точки. | |
|
|
|
|
|
|
|
для: AcidTrash
(20.11.2008 в 15:58)
| | А, я ошибся. В третьем параметре у strpos - это символ, а не вхождение. Тогда explode будет удобнее всего. Только, лучше в цикле (на случай, если нужен текст по энную точку, а не по третью. | |
|
|
|
|
|
|
|
для: Shorr Kan
(20.11.2008 в 15:57)
| | А я вижу только, до первой точки.
Строку, которая содержит весь текст, от нулевого символа до третьей точки | |
|
|
|
|
|
|
|
для: AcidTrash
(20.11.2008 в 15:55)
| | Вся строка и сохранится - в ней только две точки. | |
|
|
|
|
|
|
|
для: AcidTrash
(20.11.2008 в 15:44)
| | - | |
|
|
|
|
|
|
|
для: Shorr Kan
(20.11.2008 в 15:46)
| |
<?php
$text="Строку, которая содержит весь текст, от нулевого символа до третьей точки. Что и требовалось.";
$text=substr($text,0,strpos($text,'.',2));
print $text;
?>
|
И каков будет результат? | |
|
|
|
|
|
|
|
для: kis-kis
(20.11.2008 в 15:45)
| | >общее кол-во символов в тексте
Если общее количество всех символов в строке, то правильно. | |
|
|
|
|