۳ قدم سریع برای ساخت صفحات اکسل با PHP

اردیبهشت ۲۵, ۱۳۹۱ توسط : سعید

همینطور که میدونید اکسل نرم افزاری برای مدیریت اطلاعات است که توسط مایکروسافت تولید شده.کاربرد این نرم افزار در کشور ما هم گسترده است و شرکتهای زیادی در حال حاظر از این نرم افزار استفاده میکنن.

به عنوان برنامه نویس وب گاهی نیاز داریم تا اطلاعاتی رو با فرمت اکسل تولید کنیم تا در خروجی بتونیم به راحتی ازشون استفاده کنیم.

برای این پست سه راه ساده برای تولید صفحات اکسل به وسیله php رو براتون قرار میدم. همینطور که ادامه خواهید دید این کار بدون هیچ کتابخانه یا کلاس خاصی انجام میشه.

قدم اول : content-type

در قدم اول به وسیله تابع header باید به php بگیم که محتوای صفحه ما رو به صورت فایل اکسل در نظر بگیره. برای این کار از کد زیر استفاده میکنیم :

header("Content-Type: application/vnd.ms-excel");

قدم دوم : اضافه کردن اطلاعات

برای اضافه کردن اطلاعات از دستور echo استفاده میکنیم! دقت داشته باشید که برای جدا کردن سلولها از هم از t و برای ایجاد خط جدید از n استفاده میکنیم :

echo 'First Name' . "t" . 'Last Name' . "t" . 'Phone' . "n";
echo 'John' . "t" . 'Doe' . "t" . '555-5555' . "n";

یاد آوری :

t هرگاه داخل دابل کوتیشن قرار گیرد مثل کلید TAB عمل میکنه و به اندازه یک tab فاصله میندازه.

n هر گاه بین دابل کوتیشن قرار گیرد مکان به خط جدید منتقل میشود

قدم سوم : اجرای برنامه!!!!

در این مرحله کافیه اسکریپت رو اجرا کنید!!

پس از اجرای اسکریت سوال میشه که ایا فایل spreadsheet.xls دانلود شود یا با نرم افزار اکسل باز شود …
متن کامل برنامه :

<?php
header("Content-Type: application/vnd.ms-excel");
echo 'First Name' . "t" . 'Last Name' . "t" . 'Phone' . "n";
echo 'John' . "t" . 'Doe' . "t" . '555-5555' . "n";

بازدید : ۶۹۲۶

امیرحسین
اردیبهشت ۲۵, ۱۳۹۱ @ ۱۱:۱۹ ق.ظ

سلام سعید جان. اگه یه لینک (دکمه) لایک بذاری خیلی خوب میشه. یا میتونی از گوگل پلاس برای هر پست استفاده کنی 😉

پاسخ دادن
مرتضی
اردیبهشت ۲۹, ۱۳۹۱ @ ۷:۲۳ ب.ظ

با سلام و تشکر از مطالبتون
آیا هیچ راهی هست که بتونیم فایلهای اکسل را درون صفحه وب نمایش بدیم؟

پاسخ دادن
مرتضی
اردیبهشت ۲۹, ۱۳۹۱ @ ۷:۲۴ ب.ظ

با سلام و تشکر
آیا هیچ راهی هست که بتونیم فایلهای ورد و اکسل را در صفحه وب نمایش بدیم؟

پاسخ دادن
    سعید
    اردیبهشت ۲۹, ۱۳۹۱ @ ۹:۴۱ ب.ظ

    برای نمابش فایلهای اکسل راهی که به نظرم میاد اینه که فایل اکسل رو به صورت csv ذخیره کنی بعد با تابع fgetcsv محتویات رو بخونی و نمایش بدی

    پاسخ دادن
خرداد ۱۱, ۱۳۹۱ @ ۱۰:۰۱ ق.ظ

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

پاسخ دادن
    سعید
    خرداد ۱۱, ۱۳۹۱ @ ۵:۰۱ ب.ظ

    ممنون
    این کد یک نمونه برای اشنایی با ایجاد صفحات اکسل در پی اچ پی بود. بقیه کار به خودتون بستگی داره که چه کارهای دیگه ای میتونید با ترکیب این کد و بقیه قالتهای پی اچ پی میتونید انجام بدید. در ضمن میتونید از کلاسهای اماده ای که برای اینکار نوشته شده استفاده کنید.

    موفق باشید

    پاسخ دادن
Mehrshad Darzi
شهریور ۱۰, ۱۳۹۱ @ ۵:۴۲ ب.ظ

دوست عزیز با این کار نمیشه فارسی نوشت یعنی utf-8 اصلا ساپورت نمیشه تو خوده کلاس
phpexcel هم همین مشکل هست …..

پاسخ دادن
شهریور ۱۱, ۱۳۹۱ @ ۷:۴۲ ق.ظ

با سلام به همکی و تشکر از مدیریت صبور و پر تلاش سایت
ما نیاز به تعدادی برنامه نویس php
داریم .
خوشحال میسم بتونیم با هم همکاری لازم را داشته باشیم

پاسخ دادن
شهریور ۱۴, ۱۳۹۱ @ ۶:۳۷ ق.ظ

سلام
سایت خیلی خوبی داری .
مطالبش که خیلی به درد من خورد ممنون

پاسخ دادن
آذر ۲۳, ۱۳۹۲ @ ۷:۴۳ ب.ظ

سلام
برای بنده کار نکرد
وقتی n ها رو به \n و t ها رو به \t تبدیل کردم کار کرد (البته جای ممیز و حرف، به خاطر راست به چپ بودن نوشته ها، اینجا برعکس دیده میشه)
با تشکر

پاسخ دادن
    سعید
    دی ۲, ۱۳۹۲ @ ۱:۰۶ ب.ظ

    سلام
    آیا کاراکترهای /n/t رو داخل دابل کوتیشن ( ” ” ) قرار دادین؟
    کدتون رو بذارین اینجا تا ببینیم مشکلش چیه.

    پاسخ دادن
      دی ۳, ۱۳۹۲ @ ۱:۱۶ ق.ظ

      بله مثلا اینطوری:
      echo ‘First Name’ . “\t” . ‘Last Name’ . “\t” . ‘Phone’ . “\n”;
      نمی دونم اینجا چطور دیده می شه ولی بهترین حالت که نوشته های فارسی رو هم ساپورت می کنه، خروجی csv هست که من از این دستور ساده استفاده می کنم:

      بازم اگه سؤالی بود در خدمتتون هستم. از طریق سایتم هم همین طور:
      http://design.islam313.com

      پاسخ دادن

پاسخ دهید

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


*