برنامه نویسی

نحوه خواندن فایلهای CSV در PHP و شمارش سوابق به راحتی

خواندن از پرونده های CSV یک کار مشترک در PHP است ، به خصوص هنگام کار با واردات داده ها یا مدیریت کارآمد اطلاعات. در این مقاله ، نحوه خواندن از یک فایل CSV ، چاپ محتوای آن و تعداد کل سوابق (خطوط) را در آن بررسی خواهیم کرد.

درک پرونده CSV در PHP

پرونده های CSV (مقادیر جدا شده از کاما) فایلهای متنی ساده ای هستند که برای ذخیره داده های جدولی استفاده می شوند. هر خط در یک فایل CSV با یک رکورد مطابقت دارد و هر رکورد شامل زمینه هایی است که توسط کاما از هم جدا می شوند. درک چگونگی رسیدگی به این پرونده ها در PHP برای کارهای مختلف مربوط به داده ها بسیار مهم است.

مسائل مشترک هنگام خواندن پرونده های CSV

هنگام خواندن پرونده CSV ، ممکن است با برخی از چالش ها روبرو شوید. موضوعات مشترک شامل:

  • مسیر پرونده نادرست: اطمینان حاصل کنید که مسیر پرونده در دسترس است.
  • قالب بندی نادرست: اطمینان حاصل کنید که ساختار CSV سازگار است.
  • رسیدگی به خطوط خالی: برای جلوگیری از شمارش سوابق نادرست ، باید هر خط خالی در پرونده خود را حساب کنید.

گام به گام: خواندن پرونده CSV در PHP

در این بخش ، ما کد موجود شما را اصلاح خواهیم کرد تا اطمینان حاصل شود که در حالی که به طور مؤثر خطوط خالی را کنترل می کند ، تعداد سوابق را به طور دقیق حساب می کند. در زیر کد PHP پیشرفته وجود دارد:


توضیح کد

  1. باز کردن پرونده CSV: ما استفاده می کنیم fopen برای باز کردن پرونده برای خواندن. اطمینان حاصل کنید که مسیر پرونده صحیح است. در غیر این صورت ، این می تواند به شکست منجر شود.
  2. خواندن پرونده: ما از یک استفاده می کنیم while حلقه برای خواندن مطالب تا زمانی که به انتهای پرونده برسیم. در feof عملکرد عملکرد برای وضعیت پایان پرونده.
  3. پردازش هر خط: در داخل حلقه ، ما یک خط را با استفاده از آن می خوانیم fgetsبشر سپس بررسی می کنیم که آیا خط با استفاده از خالی نیست trim()، که فضای سفید را از ابتدا و انتهای محتوا از بین می برد.
  4. شمارش سوابق: برای هر خط معتبر ، ما محتوای آن را چاپ می کنیم و متغیر پیشخوان خود را افزایش می دهیم $cبشر
  5. بستن پرونده: پس از اتمام خواندن پرونده ، آن را با استفاده از آن می بندیم fcloseبشر
  6. خروجی شمارش: سرانجام ، ما تعداد کل سوابق را خروجی می کنیم.

سوالات متداول

1. چگونه می توانم تعیین کننده های مختلف را در یک پرونده CSV اداره کنم؟

اگر فایل CSV شما از تعیین کننده دیگری (مانند برگه ها یا قسمتهای نیمه) استفاده می کند ، استفاده از این موارد را در نظر بگیرید fgetcsv عملکرد ، که امکان تعیین تعیین کننده را فراهم می کند:

$row = fgetcsv($fp, 1000, ";"); // For semicolon-delimited CSV

2. آیا می توانم با استفاده از این روش ، پرونده های بزرگ CSV را پردازش کنم؟

بله ، اما برای پرونده های بسیار بزرگ ، خواندن و پردازش پرونده را در تکه ها در نظر بگیرید تا میزان مصرف حافظه کاهش یابد.

3. اگر پرونده وجود نداشته باشد چه می شود؟

همیشه بررسی کنید که آیا پرونده با موفقیت باز شده است یا خیر. می توانید استفاده کنید if ($fp !== false) قبل از تلاش برای خواندن از آن.

با دنبال کردن مراحل و کد ذکر شده در این وبلاگ ، می توانید یک فایل CSV را در PHP بخوانید ، تعداد خطوط را بشمارید و محتوای آن را چاپ کنید. این روش به راحتی می تواند تطبیق یابد تا در صورت لزوم پردازش داده های اضافی را شامل شود.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا