PDA

View Full Version : به دست آوردن طول یک رشته به بایت



alirezador
دوشنبه 16 مرداد 1385, 15:42 عصر
تو php من دونبال این گشتم که چطوری میشه طول یک رشته رو به بایت محاسبه کرد البته این فرض رو هم دارم که طول یک رشته باید به بایت باشه یعنی هر یک کاراکتر یک بایت فضا بگیره ولی تو رشته های فارسی چی؟
تابعی واسه این مسئله هست که خودش دقیق محاسبه کنه یا راهی داره؟
ممنون میشم اگه راهنماییم کنید

tabib_m
دوشنبه 16 مرداد 1385, 16:43 عصر
تا اونجایی که من اطلاع دارم ، طول رشته ها (به وسیله ی تابع strlen ) به اندازه ی بایت های اون رشته است. چه انگلیسی و چه فارسی.
یعنی اگر رشته ی مورد نظر یک رشته ی utf8 با عبارت "محسن" باشه ، طول این رشته 8 به دست میات. (یعنی من که قبلا تست کرده بودم ، اینجوری بود ، شاید اشتباه کرده باشم).

oxygenws
سه شنبه 17 مرداد 1385, 07:55 صبح
یعنی اگر رشته ی مورد نظر یک رشته ی utf8 با عبارت "محسن" باشه ، طول این رشته 8 به دست میات. (یعنی من که قبلا تست کرده بودم ، اینجوری بود ، شاید اشتباه کرده باشم).
اینی که می گی درسته، اما در مورد "علی رضا" چی؟؟ طول این رشته 13 بایت می باشد!! (به دلیل اون فاصله)

در این مورد میشه از توابع multibyte استفاده کرد، راهنمای PHP رو ببینید.