سه شنبه ۰۱ تیر ۱۴۰۰

Tuesday, June 22, 2021 GMT +4:30

» دستور switch و case در PHP

php-switch-case

به طور معمول کدنویسی فرآیند تبدیل ایده های ذهنی به زبان ماشین در بستر ابزارهای یک زبان برنامه نویسی نظیر PHP است، منظور از ابزارها دستوراتی هستند که با آنها قابلیت مقایسه، شرط و در کل قدرت تصمیم گیری فراهم می شود و امکان ترجمه ایده ذهنی به شکل کدها میسر می گردد، بر این اساس هر دستوری در زبان برنامه نویسی با هدف رفع نیاز خاصی در فرآیند تبدیل ایده ذهنی به زبان کد ایجاد شده است، به طور مثال برای مقایسه کوچکتر یا بزرگتر بودن اعداد عملگرهای <> در نظر گرفته شده اند یا برای ایجاد حالت شرطی دستور if و else کاربرد دارد که این موارد را در آموزش های گذشته بررسی کردیم، در آموزش پیش رو می خواهیم به دستور دیگری تحت عنوان switch و case بپردازیم که با وجود شباهت به دستور if و else کاربردها و دستورالعمل نگارش (Syntax) خاص خود را دارد.

کاربرد دستور switch در PHP


همانطور که از معنی عبارت switch (تعویض) پیداست از این دستور برای مقایسه یک پارامتر با مورد (case) یا موارد مد نظر استفاده می کنیم و در صورت برقرار (true) بودن مقایسه کدهای قسمت case یا case های مورد نظر اجرا می شود، دستور switch و case شباهت زیادی به دستور شرطی if و else دارد و حتی بعضا به جای هم استفاده می شوند اما فلسفه پیدایش این دو از هم جدا است و در برنامه نویسی پروژه های پیشرفته کارکردی متمایز دارند، اگر بخواهیم نحوه کاربرد switch و case در PHP را با مثالی از دنیای واقعی توضیح دهیم می توانیم کتابخانه ای را فرض کنیم که با توجه به درخواست (switch) ما از بین کتاب ها (case ها) ی موجود یک یا چند مورد را انتخاب کرده و به عنوان نتیجه تحویل می دهد، یا رستورانی را تصور کنیم که از بین منوی غذاهای مختلف (به عنوان case ها) بر اساس سفارش مورد نظر (به عنوان switch) غذای مورد نظرمان را آماده می کند، هرچند تشبیه دنیای برنامه نویسی با اتفاقات زندگی روزمره دقیقا امکانپذیر نیست اما جهت تسهیل در آموزش و تبادر ذهنی می تواند مفید باشد.

شیوه نگارش (Syntax) دستور switch در PHP


شیوه نگارش یا Syntax دستور switch در PHP بی شباهت به سایر زبان های برنامه نویسی از جمله جاوا اسکریپت نیست، مشابه با جاوا اسکریپت یک متغیر برای مقایسه به switch اختصاص می یابد و از بین case های موجود یک مورد یا بیشتر انتخاب و کدهای آن اجرا می شود، به طور مثال:
<?php
$lang = 'FA';

switch($lang){
    case 'FA':
    echo 'زبان سایت فارسی است!';
    break;
    case 'EN':
    echo 'The site language is English!';
    break;
}
?>
خروجی نمونه کد بالا به صورت زیر خواهد بود:
زبان سایت فارسی است!
توضیح:
- در مثال بالا ابتدا متغیر فرضی lang برابر FA مقداردهی شده است، این مقدار می تواند به فرض از طریق آدرس URL یا فیلد input در سایت دریافت شود.
- سپس در دستور switch مقادیر متغیر lang به عنوان کلید به ترتیب با case ها مقایسه می شود، رابطه هر مورد که مقدار آن با متغیر lang برابر بود true شده و کدهای آن case اجرا می شود.
- برای مقایسه برابر بودن مقدار متغیر switch با case ها از عملگر === استفاده می شود، یعنی متغیر باید از هر لحاظ (نوع و مقدار) با case ها برابر باشد تا رابطه برقرار و نتیجه true شود.
- قسمت مربوط به break با true شدن هر case باعث پایان اجرای دستور switch و توقف جستجو در موارد بعدی می شود، در واقع وقتی در دستور switch موردی با مقادیر مشابه متغیر lang پیدا می شود مقایسه case آن true شده و قسمت break به اجرای ادامه دستورات خاتمه می دهد.
- اگر در دستور switch برای case ها از break استفاده نکنیم با true شدن یک مقایسه ادامه دستورات تا جایی که دستور break بعدی درج شده ادامه خواهد یافت و احتمالا نتایج غیرمنتظره ای در هنگام اجرای برنامه در پی دارد.
نکته: در مقایسه switch با case ها ممکن است چند case مختلف نتیجه مشترک داشته باشند، در این حالت می توانیم case ها را به صورت چندگانه در یک قسمت ترکیب کنیم، به فرض در نمونه کد زیر اگر زبان سایت فارسی یا عربی باشد جهت نوشتار راست به چپ تنظیم می شود، بر همین اساس اگر زبان سایت انگلیسی یا فرانسه باشد جهت نوشتار از چپ به راست در نظر گرفته می شود:
<?php
$lang = 'FA';

switch($lang){
    case 'FA':
    case 'AR':
    $dir = 'RTL';
    break;
    case 'EN':
    case 'FR':
    $dir = 'LTR';
    break;
}
?>

استفاده از default در دستور switch


فرض کنیم هیچ کدام از case ها با مقادیر متغیر فرضی lang همخوانی نداشته باشند در این صورت ممکن است بخواهیم به کاربر پیامی نشان دهیم یا به طور مثال بگوییم که زبان مورد نظر خود را در فیلد مربوطه وارد کند و یا هر حالتی که نیاز به یک مقدار پیش فرض داشته باشد، برای این منظور از قابلیت دیگری در switch به نام default case یا مورد پیش فرض استفاده می کنیم، به طور مثال:
<?php
$lang = '';

switch($lang){
    case 'FA':
    echo 'زبان سایت فارسی است!';
    break;
    case 'EN':
    echo 'The site language is English!';
    break;
    default:
    echo 'لطفا زبان پیش فرض سایت را انتخاب کنید!';
}
?>
خروجی نمونه کد بالا به صورت زیر خواهد بود:
لطفا زبان پیش فرض سایت را انتخاب کنید!
توضیح:
- با توجه به مثال بالا چون مقدار متغیر فرضی lang برابر خالی یا empty است و هیچ کدام از case ها چنین مقداری ندارند قسمت مربوط به default یا مورد پیش فرض اجرا می شود.
- استفاده از قسمت default اختیاری است اما بهتر است برای مواقعی که ممکن است هیچ کدام از case ها برقرار نباشند یک مقدار پیش فرض در برنامه در نظر گرفته باشیم.

استفاده از دستور switch در حالت داینامیک


در عمل دستورات PHP اغلب به شیوه داینامیک مقداردهی می شوندو کمتر حالت استاتیک کاربرد دارد، به عبارتی داده ها و خروجی های برنامه با توجه به شرایط مختلف می توانند مقادیر متفاوتی باشند، در نمونه مثال ها صرفا جهت کمک به آموزش و فهم بهتر مطلب از متغیرهای استاتیک و از پیش مقداردهی شده استفاده شده است، این مقادیر می توانند به طور مثال با توجه به آدرس URL درخواستی، شناسایی کشور کاربر از روی IP، ارسال مقادیر از طریق فرم HTML و فیلد input و یا هرآنچه که می تواند به عنوان مقادیر متغیر در برنامه دریافت شود قابل تغییر باشد که این بستگی به نیاز برنامه و هدف ما دارد، به طور مثال در نمونه کد زیر روز هفته در تابع date با توجه به تاریخ سرور با عددی متناظر بین 1 تا 7 برگردانده می شود که می توانیم با این مقدار دستور siwtch نوشته و به فرض پیامی متناسب با زمان فعلی را نمایش دهیم:
<?php
$day_of_week = date('N');

switch($day_of_week){
    case 1:
    echo 'با توجه به تاریخ سرور امروز دوشنبه است!';
    break;
    case 2:
    echo 'با توجه به تاریخ سرور امروز سه شنبه است!';
    break;
    case 3:
    echo 'با توجه به تاریخ سرور امروز چهارشنبه است!';
    break;
    case 4:
    echo 'با توجه به تاریخ سرور امروز پنجشنبه است!';
    break;
    case 5:
    echo 'با توجه به تاریخ سرور امروز جمعه است!';
    break;
    case 6:
    echo 'با توجه به تاریخ سرور امروز شنبه است!';
    break;
    case 7:
    echo 'با توجه به تاریخ سرور امروز یکشنبه است!';
    break;
    default:
    echo 'اشکالی در دریافت اطلاعات وجود دارد!';
}
?>
توضیح:
- با در نظر گرفتن پارامتر N برای تابع date در PHP مقادیر متناظر با روزهای هفته از عدد 1 (روز دوشنبه) تا عدد 7 (روز یکشنبه) با توجه به تاریخ سرور به عنوان نتیجه برگردانده می شود که می توانیم از این مقدار به عنوان switch استفاده کنیم، آشنایی بیشتر با پارامترهای تابع date:
https://www.php.net/manual/en/function.date.php

استفاده از دستور switch بدون متغیر مقایسه


در مثال ها و نمونه کدهایی که تا این قسمت از آموزش بررسی کردیم دستور switch با یک متغیر همراه بود که برای مقایسه با case ها از آن استفاده کردیم، جالب است که دستور switch و case بدون وجود این متغیر مقایسه ای نیز قابل استفاده است، به طور مثال:
<?php
$number = 20;
switch(true){
    case $number < 20:
    echo 'عدد از 20 کوچکتر است!';
    break;
    case $number > 20:
    echo 'عدد از 20 بزرگتر است!';
    break;
    case $number == 20:
    echo 'عدد با 20 برابر است!';
    break;
}
?>
خروجی نمونه کد بالا به صورت زیر خواهد بود:
عدد با 20 برابر است!
همان طور که مشخص است به جای متغیر مقایسه از عبارت true استفاده و در هر case مقادیر متغیر فرضی number را بررسی کرده ایم.

کجا از if else و کی از switch case استفاده کنیم؟!


در زبان های برنامه نویسی دستور if else و switch case هر دو جزء خانواده دستورات کنترلی (Control Statements) هستند و برای تصمیم گیری در دو یا چندراهی های برنامه ها به کار می روند، این دو شکل از دستورات قابلیت جایگزینی به جای هم را دارند یعنی یک الگوریتم را هم می توانیم با if else و هم با switch case پیاده سازی کنیم، به طور مثال:
<?php
$a = 1;

if($a == 0){
    echo 0;
} else if($a == 1){
    echo 1;
} else if($a == 2){
    echo 2;
}

switch($a) {
    case 0:
    echo 0;
    break;
    case 1:
    echo 1;
    break;
    case 2:
    echo 2;
    break;
}
?>
خروجی هر دو دستور عدد 1 خواهد بود، با این شباهت سوالی که ممکن است به ذهن خطور کند این است که کجا باید از if else و کی از switch case استفاده کنیم؟!
در پاسخ باید گفت هر دستوری با فلسفه خاصی ایجاد و معرفی گردیده تا در بهینه ترین شکل ممکن نیاز برنامه نویسان را پوشش دهد، دستورات در برنامه نویسی شبیه ابزارها در دنیای واقعی هستند، پیچ چهارسو را با آچار دوسو می توانیم باز و بسته کنیم اما قاعدتا در این حالت آچار دوسو کاربرد و مزیت های آچار استاندارد چهارسو را نخواهد داشت! به عبارتی برای کار حرفه ای ابزار حرفه ای مورد نیاز است.
با این توضیح بهینه این است که از if else در شرایط زیر استفاده کنیم:
- حالت های شرطی محدود به یک یا چند مورد باشند (با یک یا چند دستور if else کدهای مورد نیاز برنامه نوشته شوند).
- کدهایی که با true شدن شرط اجرا می شوند بیش از چند خط باشند (بهتر است کدهای طولانی را بین بلاک های if else قرار دهیم).
- بررسی و مقایسه ی بیش از یک متغیر در شرط مورد نیاز باشد (گفتیم که در دستور switch صرفا یک متغیر به عنوان کلید مقایسه استفاده می شود).
- عملیاتی به غیر از عملگر === مورد نیاز باشد (اگرچه می توانیم دستور switch را به گونه ای بنویسیم که عملگرهای مقایسه ای به جزء عملگر پیش فرض === در آن استفاده شود، اما استفاده از if else در این شرایط ساده تر است و ارجحیت دارد).
استفاده از switch case نیز در شرایط زیر ارجحیت دارد:
- حالت های شرطی بیش از چند مورد باشند (شرایطی که ناچار باشیم if else های تو در توی چند لایه تعریف کنیم).
- بررسی و مقایسه صرفا به یک متغیر (به عنوان سوئیتچ) وابسته باشد.
- زمانی که با true شدن شرط چند مقایسه نتیجه واحد را اجرا کنند (گفتیم که می توانیم از چند case متوالی برای اجرای عملیات واحد در دستور switch استفاده کنیم).
نکته: در برنامه نویسی پروژه های کاربردی گاهی تصمیم گیری برای انتخاب شیوه بهینه به دلیل وجوه مشترک دستورات دشوار می شود، در این شرایط باید توجه داشته باشیم که کدام روش مزیت های بیشتری در اختیارمان قرار می دهد، هرچند رسیدن به این مهارت تا حدود زیادی نیازمند کسب تجربه کافی در دنیای برنامه نویسی وب است.
دسته بندی: آموزش مقدماتی » PHP
related مطالب بیشتر:
» توابع کار با آرایه در PHP - بخش اول
» توابع (Functions) در PHP
» آرایه (Array) در برنامه نویسی PHP
» عملگرها (Operators) در PHP
» تعریف و استفاده از متغیر (Variable) در PHP
commentنظرات (۱۸ یادداشت برای این مطلب ارسال شده است)
more یادداشت های جدید بر اساس تاریخ ارسال در انتهای یادداشت های موجود نمایش داده می شوند.
نویسنده: محمد
۱۳:۱۳ ۱۳۹۹/۰۳/۲۵
با عرض سلام ببخشید چطوری میشه واسه اشتراک خریدن زمان ۱ ماهه گذاشت که بعد از گذشت ۱ ماه پیام بده دوباره اشتراک تهیه کنید از طریق پی اچ پی میشه و از چه دستوری ممنون از زحمات شما
پاسخ: 
با برنامه نویسی PHP انجام این موارد شدنی است منتها سوالتان پاسخ کوتاهی ندارد و محدود به یک دستور خاص نمی شود!، برای هدف مد نظرتان باید یک سیستم نرم افزاری تحت وب طراحی کنید که شامل بخش های مختلف از جمله رابط کاربری (User Interface)، کدنویسی سمت سرور (PHP) و طراحی ساختار دیتابیس (MySQL) است، به زبان ساده باید دیتابیسی داشته باشید که به فرض اطلاعات کاربران سایت در آن نگهداری و زمان انقضاء هر اشتراک در ستون های دیتابیس ذخیره شود، در گام بعد با کدهای PHP می توانیم اطلاعات ارسالی را با دیتابیس تطبیق دهیم و مدت زمان باقیمانده را بدست آوریم و در رابط کاربری موارد مورد نیاز را با خروجی HTML به کاربر نمایش دهیم، نتیجه اینکه باید با مباحث زیر آشنا باشید:
- کدنویسی HTML و CSS
- کار با دستورات PHP و از جمله تابع date، سشن و کوکی.
- کار با دیتابیس MySQL و اجرای پرس و جو در PHP.
نویسنده: محمد
۲۲:۳۸ ۱۳۹۹/۰۳/۲۵
سلام مجدد ببخشید طبق فرمایش شما من در دیتابیس جدولی ساخته بودم فقط مشکلم اینجاست چطوری میتونم توسط کوکی یا سیشن با تابع دیت انقضا بزارم واسه اشتراک کاربر . ایا باید کوکی رو ذخیره کنم داخل سیشن بعدا کوکی رو داخل دیتابیس ذخیره کنم اگر امکانش هست فقط کد دستوری که چطوری دستورش رو بنویسم واسم ارسال کنید ممنون میشم واقعا گیر کردم در این موضوع تشکر فراوان از تشکر شما .
پاسخ: 
به طور خلاصه کاری که باید برای این برنامه انجام دهیم این است که:
1- ابتدا کاربر در سایت ثبت نام می کند، در این مرحله نیاز به وجود سیستم ثبت نام داریم.
2- پس از ثبت نام و ذخیره اطلاعات اولیه کاربر در دیتابیس باید قسمت اختصاص اشتراک داشته باشیم، با فرض طراحی این قسمت اشتراک به این صورت است که با هر خرید کاربر تا مدت زمان خاصی مجاز به استفاده از خدمات سایت است و این حداکثر زمان را در ستونی در دیتابیس به صورت تاریخ و زمان (ستون از نوع DATETIME) ذخیره می کنیم به فرض:
2020-06-15 11:32:55
3- در هنگام ورود کاربر به سیستم و قصد استفاده از اشتراک تاریخ و زمان فعلی را با مقادیر موجود در قسمت اشتراک های فعال برای آن کاربر بررسی می کنیم (برای ورود و خروج نیاز به سشن کوکی است)، مثال:
SELECT id FROM $tbl_name WHERE `username` = '$username' AND `valid_date` > '$now_date' LIMIT 1
با بررسی تعداد id برگردانده شده اگر مقدار 1 و زمانی باقیمانده بود یعنی کاربر هنوز فرصت دارد و در غیر اینصورت پیغام خطا نمایش می دهیم.
توصیه ما این است چند آموزش مرتبط با این موضوع (شامل نحوه ساخت فرم عضویت، سیستم ورود و خروج و هوشمندی سازی پنل مدیریت) در سایت را در قسمت آموزش های کاربردی MySQL دقیق مطالعه کنید، تقریبا تمام موضوعات مورد نیاز به همراه نمونه کدها برای طراحی سیستم خرید اشتراک در آنها توضیح داده شده که می توانید الگوبرداری کنید و کدهای مورد نیازتان را بنویسید.
نویسنده: سحر
۱۳:۵۸ ۱۴۰۰/۰۲/۲۶
با فرض اینکه همه ماه های سال ۳۰ روزه باشند برنامه ای بنویسید که شماره روزی از سال دریافت کرده و نام ماه و شماره روز آن راچاپ کند
مثال:
اگر کاربر عدد ۲۵ وارد کند باید ۲۵ فروردین چاپ کند
اگر کاربر عدد ۴۰ وارد کند باید ۱۰ اردیبهشت چاپ کند
اگر کاربر عدد۱۸۰ وارد کند باید ۳۰ شهریور چاپ کند
پاسخ: 
تابع زیر برای نمایش ماه شمسی مطابق با الگوی مد نظر مناسب است:
<?php
function showJalaliMonth($day){
$months = Array('فروردین', 'اردیبهشت', 'خرداد', 'تیر', 'مرداد', 'شهریور', 'مهر', 'آبان', 'آذر', 'دی', 'بهمن' , 'اسفند');
$days = Array(30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360);

foreach($days as $key => $value){
if($day <= $value){
return $months[$key];
}
}

return false;
}

echo showJalaliMonth(320);
?>
more لطفا پیش از ارسال یادداشت نکات زیر را مد نظر داشته باشید:
- موارد غیرمرتبط با مباحث آموزش ها را در فرم منوی "تماس با ما" مطرح و پاسخ را از طریق ایمیل دریافت کنید.
- به سوالات کلی، مبهم و مشکلاتی که تلاشی برای رفع آن نکرده باشید پاسخ مختصر داده خواهد شد.
- کدها و اسکریپت های طولانی را ترجیحا در یک صفحه وب آنلاین قرار دهید تا امکان تست و بررسی وجود داشته باشد.
- از درج عناوین تبلیغاتی در فیلدها خودداری کنید، در صورتی که یادداشت تبلیغاتی تشخیص داده شود حذف خواهد شد.
- تمام یادداشت ها بررسی و زمانی جهت پاسخگویی در نظر گرفته می شود، لطفا از طرح سوالات متعدد خودداری کنید.





9 × 6
 refresh

آخرین دیدگاه ها
more برای دسترسی سریع به یادداشت مربوطه می توانید از لینک مطلب در کادر زیر استفاده کنید.
form علیرضا
در:
مفید و کاربردی مرسی
۱۴۰۰/۰۳/۳۱

form محمود
در:
سلام مهندس وقت بخیر دوباره به کمک شما نیاز پیدا کردم ، چگونه می توان استایل صوت به یک متن داد. به...
۱۴۰۰/۰۳/۳۰

form پرتو
در:
سلام استاد خسته نباشید قالبم درست شد خیلی ممنون یه خواهش دیگه هم ازتون داشتم اینکه یه بوردر برای تک به تک پست ها جداگانه...
۱۴۰۰/۰۳/۲۴

form بهنیا
در:
سلام خسته نباشید ببخشید چطوری میتونم برای خود وبسایتم یه لینک بسازم؟ کد خاصی داره؟
۱۴۰۰/۰۳/۲۴

form Raha
در:
سلام وقت بخیر چه جوری می تونم از دو تا function باهم استفاده کنم. مثلا میخوام توی مسیج باکس دوتا عدد دلخواه بدم...
۱۴۰۰/۰۳/۲۴

form رها
در:
سلام ممنون میشم اگه راهنماییم کنید من میخوام تو جاوا اسکریپت توی مسیج باکس بصورت اختیاری عدد بدم و جمع و تفریق انجام بشه. ...
۱۴۰۰/۰۳/۲۴

form محمد
در:
با عرض سلام و احترام مجدد پیرو کامنت قبلی که لطف کرده و توجه فرمودید آدرس سایت این هست: از توجه و راهنمایی‌های همیشگی...
۱۴۰۰/۰۳/۲۳

form محمد
در:
سلام وقت بخیر با سپاس از تیم محترم وبگو یک سوال داشتم از خدمتتون در عکسی که در آدرس با...
۱۴۰۰/۰۳/۲۲

form پرتو
در:
با سلام استاد من براتون ایمیل فرستادم لطفا ایمیل خود را چک کنید با تشکر
۱۴۰۰/۰۳/۲۱

form پرتو
در:
سلام خوبید خسته نباشید من یه کد قالبی دارم که میشه براتون بفرستم و شما تغییرش بدین من قالبم رو می خاستم اگه...
۱۴۰۰/۰۳/۲۰

form سید ارمیا حسینی
در:
سلام ببخشید عالی بود اما اگه می خواستم مثلا چیزی رو ایجاد کنم که مثلا کاربر بعد از ورود به صحفه 5 ثانیه بعد وارد...
۱۴۰۰/۰۳/۲۰

form الی
در:
سلام وقت بخیر من میخوام یه سایت طراحی کنم و در قسمت هدر یه گیف بذارم ولی هر کار می کنم گیف نمایش داده...
۱۴۰۰/۰۳/۱۸

form علیرضا حسینی
در:
دمتون گرم خسته نباشید خیلی عالی بود
۱۴۰۰/۰۳/۱۸

form حامدترابی
در:
سلام چند وقته که وبلاگ شهیدحسن ترابی گودرزی باز نمیشه ولی با vpn باز میشه. میشه راهنماییم کنید. ممنون میشم
۱۴۰۰/۰۳/۱۶

form mahdi
در:
سلام استاد این تابع در لوکال هم ایمیل ارسال میکنه هم فایل ضمیمه ، البته زمپ رو یه سری تغییرات باید داد و حساب ایمیل...
۱۴۰۰/۰۳/۱۲

form mahdi
در:
سلام وقت بخیر ، استاد عزیز اگر ما با تابع mail یه تابعی بنویسیم که در لوکال قابلیت ارسال هر نوع ایمیلی رو داشته باشه...
۱۴۰۰/۰۳/۱۲

form masood
در:
سلام وقتتون بخیر ببخشید من یک سوالی دارم اگر بخوایم تنظیماتی که برای id و class در نظر داریم رو تو یه...
۱۴۰۰/۰۳/۱۱

form mahdi
در:
استاد وقتشو دارید امشب ببینیدش مثلا در حد نیم ساعت که وقتتونم گرفته نشه؟
۱۴۰۰/۰۳/۱۰

form mahdi
در:
سلام استاد وقت بخیر،استاد عزیز من یه چارت با جاوااسکریپت نوشتم که سه تا نمودار میلیه ای و خطی و نقطه ای رو در بر...
۱۴۰۰/۰۳/۱۰

form پرتو
در:
وای من نمی تونم توی زمینه طراحی قالب های دیگ فعالیت کنم چون خیلی سختن فک نکنم بتونم اگر جایی می شناسید که قالب های...
۱۴۰۰/۰۳/۰۹

form پرتو
در:
سلام خسته نباشید شرمنده مزاحم شدم دوباره، می خاستم بپرسم می ارزه کسی وبلاگ در مورد قالب سازی بزنه یا اینکه نه نمی ارزه آخه...
۱۴۰۰/۰۳/۰۹

form یاس
در:
سلام میخواستم بدونم چجوری باید فایل متنی HTML دارای هایپرلینک را باز کند و محتوای آنرا بخواند و سپس هایپرلینک های آن را شناسایی کند...
۱۴۰۰/۰۳/۰۸

form sattar
در:
سلام، اون قسمتی که اعتبار سنجی ورود حروف فارسی هست مشکل داره یعنی کاربر رو اجبار به وارد کردن حروف فارسی میکنیم اما اگر مثلا...
۱۴۰۰/۰۳/۰۸

form mahdi
در:
سلام استاد ckeditor بهتره یا TinyMCE؟ من اینو ckeditor دیدم که راست چین چپ چین نداشت بعد استاد عزیز من یه چیزی رو...
۱۴۰۰/۰۳/۰۶

form پرتو
در:
ممنونم از شما که کدش رو دادید فقط یه سوال داشتم و اونم اینکه این کد رو در کدوم قسمت قالب قرار بدم و ایا...
۱۴۰۰/۰۳/۰۴

form mahdi
در:
سلام نه استاد عزیز نیازی نیست چون خودمم فکر میکنم لوگو رو باید از قبل مثلا با فتوشاپ آماده داشت و فقط میخواستم این امکانم...
۱۴۰۰/۰۳/۰۳

form پرتو
در:
سلام خواستم تشکر کنم از کدی که قبلا بهم داده بودید درست شد قالبم واقعا ممنونم ازتون یه چیز دیگه می خاستم بگم اینکه یه...
۱۴۰۰/۰۳/۰۳

form دانیال
در:
باسلام خیلی ممنون بابت مطالب عالیه سایتتون این مطلب هم مثل بقیه مطالب عالی بود
۱۴۰۰/۰۳/۰۳

form mahdi
در:
سلام استاد عزیز ، بله استاد اونطوری قرار میگیره وقتی تصویر از قبل مثلا با فتوشاپ شفاف شده باشه ، ولی اگر بخوایم یک عکس...
۱۴۰۰/۰۳/۰۳
  در انتظار بررسی: ۰
 پاسخگویی به سوالات ممکن است تا 24 ساعت زمان ببرد.