PDA

نسخه کامل مشاهده نسخه کامل : یک مشکل با این ک php



moontoise
19-12-2008, 12:23
سلام.
من دارم یه انجمن می نویشم, ولی به مشکل کوچو لو بر خوردم.
من برای اینکه نام تاپیک ها از حدی بیشتر نشه, این کد رو نوشتم:


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

حالا, وقتی زمان نقطه چین زدن می رسه, اگه کاراکتر آخر Space یا همون فاصله باشه, این کد به جای این کاراکتر حرف خ می زنه و گاهی هم یک مربع...

حالا من موندم چطور این مشکل رو رفع کنم.
لطفا کمکم کنید

David.Jn
21-12-2008, 19:13
سلام
من این تاپیکتونو ندیده بودم
نمیدونم به جوابتون رسیدید یا نه!
واسه من خیلی جالب شده بود که چرا برای کاراکتر آخر رو همون مربعی که شما میگید رو نمایش میده!
و یا چرا نصف لون چیزی که ما برای طول قرار میدیم نمایش داده میشه.

ولی با یه کمی تجزیه تحلیل به این نتیجه رسیدم :
اینو میدونید که برای نوشتن صفجه فارسی باید انکدینگ رو UTF-8 قرار بدید.
خوب این انکدینگ میاد برای هر حرف دو کاراکتر اسکی در نظر میگیره.
تابع substr میاد حرف به حرف میره جلو و چون حروف به دو تا کاراکتر تبدیل میشه و اینکه کاراکتر Spase هم در نظر گرفته میشه پس 50 تا میشه 25.
حوب حالا این تابع میاد میرسه به یه حرف ولی چون قبلش Space خورده و اونم حساب شده پس حرف 25ام یکی از کاراکترهای اسکیش در نظر گرفته میشه و وقتی صفحه میخواد Decode بشه نمیدونه این کاراکتر چیه به خاطر همون اون مربع نمایش داده میشه.
--------------
ولی مشکل حل
این کد بهت جواب میده:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدموفق یاشی