هذه الفنكشنات استعملتها لكن يبدو أن الثانية تؤخر وتبطئ عرض النتائج, فهل يمكن المساعدة في اختيار أفضل فنكشن لقطع جزء من النص.
ومشكورين سلفا.
function textcut($tra_text, $num){
$a = substr($tra_text,0, $num); // قطع النص بالحد المطلوب
$b = strrpos($a," "); // معرفة موقع آخر مسافة في النص المقطوع
$c = strlen($tra_text);
if($num > $c){ // التحقق من أن الحد المطلوب قطعه أكبر من عدد حروف النص
return $tra_text;
}elseif($num ==$c){ // التحقق إذا كان الحد المطلوب قطعه = عدد حروف النص
return $tra_text;
}elseif($num < $c){ // التحقق إذا كان المطلوب قطعه أقل من عدد حروف النص
return substr($tra_text,0, $b); //القطع من ما قبل الكلمة
}
}
//---------------
$tra_text = textcut($tra_text,250);
//---------------------
function cute_string($text,$number)
{
$limit=200;
$ex=explode(" ",$text);
for($i=0;$i<$limit;$i++)
{
$cnt+=(strlen($ex[$i]));
if($cnt < $number-1 )
{
$word.=$ex[$i].' ';
}else {
$i=$limit;
}
}
return $word;
}
$t="في الكثير من مواقع الاخبار تجد بالصفحة الرئيسية جزء من المقالة وكلمة المزيد ";
echo cute_string($t, 23);