Върпос за код за съкращение

  • Автор Автор Hous
  • Начална дата Начална дата

Hous

Registered
Търсих в нета доста докато намеря подходящ код който да "реже" думата на точно определен брой символи а не на определен брой думи, намерих това
Код:
function substrwords($text, $maxchar, $end='...')
	{
	    if (strlen($text) > $maxchar) {
	        $words  = explode(" ", $text);
	        $output = '';
	        $i      = 0;
	        while (1) {
	            $length = (strlen($output)+strlen($words[$i]));
	            if ($length > $maxchar) {
	                break;
	            } else {
                $output = $output . " " . $words[$i];
	                ++$i;
	            }
	        }
       	      $output .= $end;
	    } else {
	        $output = $text;
	    }
    return $output;
	}
echo substrwords($string,30);
Обаче не знам как да го смеся с моя код за да стане работата.

Код:
$q=mysql_query("select xxxx,xxx,xx,x,x,x,xx") or die(mysql_error());
echo "<td width='100%'>";
while ($duma=mysql_fetch_array($q)) echo "<div>
<a href='http://link".$red[1].".last'>".$duma[0]."</a></div>";


Искам ".duma[0]." да се "реже" на 30тия символ и да добавя ... ако думата е по дълга от 30 символа.
как да смеся двата кода :?


Или ако може да предложие вие друг код отговарящ на моя и да съкращава думата на 30 символа и да добавя ... ако е по дълга.
:)
 
Код:
$q=mysql_query("select xxxx,xxx,xx,x,x,x,xx") or die(mysql_error());
echo "<td width='100%'>";
while ($duma=mysql_fetch_array($q))
$dumata = substrwords($duma[0],30);
 echo "<div>
<a href='http://link".$red[1].".last'>".$dumata."</a></div>";
 
Не става работата ... идеята е да съкратя 5 записа не 1 само а то ми искарва само 1 запис (послдения) след което другите въобще не ги показва...
Идеята е 5 записа на 5 реда всеки ред съкратен до 30тия символ
искам да стане точно както е във туриста горе последни мнения от форума и след определен брой символи просто се прекъсва думата и се добавя "..."
някой може ли да ми помогне да го постигна това към моя код?
:)
 
Направи го така:

Код:
$q=mysql_query("select xxxx,xxx,xx,x,x,x,xx") or die(mysql_error());
echo "<td width='100%'>";
while ($duma=mysql_fetch_array($q)) echo "<div>
<a href='http://link".$red[1].".last'>".substrwords($duma[0], 30 )."</a></div>";
:)
И ко да на колегата по-горе е правилен. Просто не е обърнал внимание, че кода ти е писан по "съкратения начин" на един ред и липсват къдравите скобки на while цикъла :)
 

Back
Горе