با استفاده از PHP و تابع str_repeat، یک خروجی متنی شبیه جدول بسازید که از یک آرایهٔ ورودی حاوی نامها و نمرات، سرستونها و خطوط جداکننده تولید کند و طول ستونها را براساس طول بیشینهٔ مقادیر تنظیم نماید.
2.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 01:54 0.0
در PHP ابتدا آرایه را پردازش کنید و با strlen یا برای متنهای فارسی از mb_strlen طول بیشینهٔ ستونهای نام و نمره را محاسبه کنید؛ سپس با استفاده از str_repeat کاراکترهای جداکننده (مثلاً '-') به اندازهٔ لازم بسازید تا عرض ستونها را پر کند. برای قالببندی سطرها میتوانید از str_pad یا printf استفاده کرده و در صورت نیاز مقادیر را با توابع متنی یا regex (مثلاً preg_replace) پاکسازی/اعتبارسنجی کنید. نکته: برای متون غیرلاتین از mb_* استفاده کنید و از str_repeat برای ساخت خطوط افقی و حاشیهها بهره ببرید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکتهای کوتاه درباره خروجی جدولی با PHP و str_repeat: عرض ستونها را باید بر اساس نمایش گرافیکی کاراکترها اندازهگیری کنید، نه صرفاً طول رشته، بنابراین از mb_strwidth بهجای mb_strlen استفاده کنید. سپس با یک تابع کمکی padding، با mb_substr و str_repeat طول هر ستون را نسبت به بیشینهی عرض نمایش تنظیم کنید تا ستونها هماندازه باشند. برای تولید خطوط افقی و حاشیهها میتوانید از str_repeat استفاده کنید، اما قبل از آن مقدارها را با توابع mb_* پاکسازی کنید تا فرمت نهایی پایدار باشد. همچنین توجه کنید که str_pad با رشتههای چندبایتی میتواند گمراهکننده باشد؛ استفاده از یک padding سفارشی یا کتابخانهای مبتنی بر mbstring توصیه میشود.
گزارش