الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في تقطيع النص العربي

مغلق
بدأه bprof في 8 أبريل 2007 · 1 رد · 557 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أخواني طالب مساعدتكو رجاءً

عندي هاد الكود والذي استخدمه لتقطيع النص الانجليزي حسب ما يرسل كقيمة للدالة

function cut($text, $numChars)
{
   if(strlen($text) > $numChars)
   {
	  $text = array_shift(explode("\n", wordwrap($text, $numChars))).'...';
	  echo $text;
   }
   return($text);
}

ولكن المشكلة عند التطبيق على عربي يظهر او 20 حرف فقط اذا كان النص 400 حرف واريد القطع بعد الحرف 150

ساعدوني مشكورين

ولكم مني الدعاء

#2

السلام عليكم:

بالنسبة للكود المكتوب فإني أعتقد أنه لن يؤدي المطلوب(أخذ أول 140 حرف من نص) سواء في العربي أو الإنكليزي

لأن التابع wordwrap يقوم هنا بإضافة سطر جديد بعد أول 140 حرف ثم يقوم explode بأخذ أول سطر (وليس أول 140 حرف كما تريد)

بإمكانك مراجعة الكود التالي الذي ينفذ ما طلبت :

function cut($text, $numChars)
{
   if(strlen($text) > $numChars)
   {
   		$text=substr($text,0,$numChars);
   		$pos=max(strrpos($text,' '),strrpos($text,"\n"),strrpos($text,"\t"));
		$text=substr($text,0,$pos)."...";
   }
   print $text."<br>";
   print strlen($text);
   return($text);
}

اقتباس
You live it or lie it
so DO IT ,DO IT right ,and DO IT right now...

هذا الموضوع مغلق.

مواضيع مشابهة