تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 8 از 8

نام تاپيک: يك سوال ساده در مورد php

  1. #1
    در آغاز فعالیت mra1online's Avatar
    تاريخ عضويت
    Jan 2011
    پست ها
    8

    پيش فرض يك سوال ساده در مورد php

    سلام دوستان
    من مي خواهم يك اسكريپت طراحي كنم به طوري كه با فايل html وجود داشته باشه كه در آن متن زير وجود داشته باشد:
    "سلام.به وبسات{site} خوشامديد,نام كاربري شما {user_name} است و ايميل شما {email} است"
    .
    .
    .
    و بعد با يك فايل php به جاي كلمه هاي {site} و {user_name} و {email} كلمات مناسب قرار داده شود

    فايل html جدا و فايل php جدا باشد


    من توانستم براي متني كه يكي از اون كلمات را دارد اسكريپت طراحي كنم و لي اگه كلمات به دو يا چند تا مي رسه گير مي كنم

    لطفا كمكم كنيد

  2. #2
    داره خودمونی میشه kaka.ronaldo's Avatar
    تاريخ عضويت
    May 2007
    پست ها
    142

    پيش فرض

    چرا میخواین جدا باشن ؟ میتونی از این کد استفاده کنی :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    Last edited by kaka.ronaldo; 26-01-2012 at 21:49.

  3. #3
    داره خودمونی میشه moein_ak's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    167

    پيش فرض

    چرا میخواین جدا باشن ؟ میتونی از این کد استفاده کنی :
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    دوست عزیز این روشیه که اکثر سیستمای تمپلیت واسه جلوگیری از شلوغ شدن تمپلیت استفاده میکنن
    در جواب دوستمونم میشه بگی از چه کدی استفاده میکنی که کار نمیکنه؟

  4. #4
    داره خودمونی میشه graphic1's Avatar
    تاريخ عضويت
    Nov 2007
    محل سكونت
    مشهد
    پست ها
    77

    پيش فرض

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

    دستور str_replace() باعث می شود هرتعداد {name} در متن باشد به جای آن متغییر $name قرار بگیرد.
    Last edited by graphic1; 29-01-2012 at 01:40.

  5. 2 کاربر از graphic1 بخاطر این مطلب مفید تشکر کرده اند


  6. #5
    داره خودمونی میشه persian_test's Avatar
    تاريخ عضويت
    Nov 2006
    محل سكونت
    مشهد
    پست ها
    113

    پيش فرض

    اگر قصد دارید این مفهوم رو که در php بهش میگن template engine رو کامل درک کنید و ازش بطور بهینه استفاده کنید [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] بهترین گزینه است.
    بنظرم سوالتون با این مفهوم که گفتم برخلاف عنوان تاپیک "ْساده" نیست :-)

  7. این کاربر از persian_test بخاطر این مطلب مفید تشکر کرده است


  8. #6
    داره خودمونی میشه moein_ak's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    167

    پيش فرض

    اگر قصد دارید این مفهوم رو که در php بهش میگن template engine رو کامل درک کنید و ازش بطور بهینه استفاده کنید [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] بهترین گزینه است.
    بنظرم سوالتون با این مفهوم که گفتم برخلاف عنوان تاپیک "ْساده" نیست :-)
    به نظر من twig گزینه خیلی بهتریه
    من خیلی با smarty کار کردم ولی تو یه نگاه عاشق twig شدم

  9. #7
    داره خودمونی میشه persian_test's Avatar
    تاريخ عضويت
    Nov 2006
    محل سكونت
    مشهد
    پست ها
    113

    پيش فرض

    به نظر من twig گزینه خیلی بهتریه
    من خیلی با smarty کار کردم ولی تو یه نگاه عاشق twig شدم
    حق با شماست

  10. #8
    پروفشنال peyman1987's Avatar
    تاريخ عضويت
    Sep 2006
    محل سكونت
    تهران
    پست ها
    995

    پيش فرض

    برای پیاده سازی چیزی که میخواین 2 روش کلی وجود داره:

    1- استفاده از توابع رشته ای:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    تابع str_replace میتونه از شما دو تا آرایه بگیره و اعضاش رو با هم جابجا کنه توی رشته.

    البته راه بهتر اینه که شما یه تابع مثل تابع زیر بنویسید برای این کار:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    خوب این به مراتب بهتر و استانداردتره ولی بازم میشه بهترش کرد.

    2 - روش دوم استفاده از عبارات با قاعده یا Regular Expressione:

    اینم یه روش کاره که میتونین با عبارات با قاعده تگهاتون رو با مقادیر متناظرشون جابجا کنین:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    این روش با اینکه سختتره ولی به نظرم خیلی بهتره و کارش هم اینه که میاد همه مقادیری رو که داخل {} هستن رو پاس میده به یه تابع که توی این مثال یه Anonymous Function با تابع create_function ساخته شده ولی میتونین یه فانکشن معمولی هم بسازین و به جاش پاس بدین به preg_replace_callback. و اون تابع هر چی که return کنه جایگزین اون مقدار پیدا شده میشه.

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

  11. این کاربر از peyman1987 بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •