رفتن به مطلب
سروش

درس پنجم - مفهوم دستورات و توابع و برخی از توابع اولیه

پست های پیشنهاد شده

با سلام مجدد خدمت دوستان عزیز

مفهوم دستورات و توابع

این بحث رو خیلی زودتر باید شروع میکردمش ولی خب یادم رفتش :(

پردازش هایی کخ برنامه های زبان PHP انجام می دهند ، از طریق دستورات(statement) و توابع(function) اجرا می گردند.دستورات فرمانی برای موتور PHP محسوب می شوند و آن را وادار می کند که کاری را انجام دهد. هر دستور در PHP به ; ختم می شود.

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

  • توابع کتابخانه ای
  • توابع ساخت کاربر

توابع کتابخانه ای ، آن هایی هستند که از قبل نوشته شده همراه زبان PHP وجود دارد که از قبل نوشته شده همراه زبان PHP وجود دارند و تمام برنامه نویسان می توانند از آن ها استفاده کنند. در این پست چند تابع کتابخانه ای را بررسی میکنیم.

اگر توابع کتابخانه ای جوابگوی نیازهای ما نبود می توانم توابع مورد نیاز خود را بنویسیم و از آن ها استفاده کنیم. به زودی در مورد این موضوع صحبت خواهیم کرد.

----------------------

این پست ادامه دارد

----------------------

پیروز باشید

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

خب سلام مجدد به همه ی دوستان

در php توابعی هستش که می توان با آن ها زمان را دستکاری کرد که در اینجا به بررسی چندتا از این توابع میپردازیم

تابع date()

این تابع تاریخ و زمان فعلی محلی را نشان می دهد به به صورت زیر به کار می رود :

date(format, timestamp) 

format مشخص می کند تاریخ یا زمان در چه قالبی باشد که در ادامه انواع آن را بیان میکنیم.

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

این هم format های تابع date :

a صبح یا عصر، نماینده am و pm است.

A صبح یا عصر، نماینده AM و PM است.

B زمان اینترنت سوئچ (swatch) که یک زمان جهانی است. اطلاعات بیشتر

C تاریخ ISO 8601، تاریخ به صورت YYYY_MM_DD . این کد فرمت در نسخه php 5 ارائه شده است.

d روز به صورت عدد دو رقمی از 01 تا 31

D روز هفته به صورت 3 کاراکتر مانند :Mon و Sun

F ماه در فرمت متنی . محدوده آن از January تا December است.

g ساعت در فرمت 12 ساعت از 1 تا 12

G ساعت در فرمت 24 ساعت از 0 تا 23

h ساعت در فرمت 12 ساعت از 01 تا 12

H ساعت در فرمت 24 ساعت از 00 تا 23

i دقیقه به صورت عدد دو رقمی از 00 تا 59

I این مقدار بولی ساعت را یک ساعت به جلو و عقب می برد (در آخر تابستان و اول فروردین)

j روز را در یک ماه نشان می دهد. از 1 تا 31

l روز را در هفته از Sonday تا Monday مشخص می کند.

L این مقدار بولی سال کبیسه را مشخص می کند و اگر سال کبیسه باشد مقدار یک را بر می گرداند.

m ماه را در فرمت دو رقمی از 01 تا 12 مشخص می کند.

M ماه در فرمت 3 کاراکتر مانند: Jan و Dec

n ماه در فرمت عددی بدون صفر از 1 تا 12

o تفاوت زمان منطقه جغرافیایی موجود و GMT را در واحد ساعت بیان می کند.

r زمان و تاریخ در فرمت RFC822

s ثانیه در محدوده 00 تا 59

S پسوند های ترتیبی اعداد در فرمت دو کاراکتر .مانند: 1st یا 23th

t تعداد روز های ماه را از 28 تا 31 مشخص می کند.

T تنظیمات منطقه زمانی سرور در فرمت 3 کاراکتر مانند EST

U تعداد کل ثانیه ها از اول ژانویه 1970 تاکنون را بیان می کند.

w روز هفته در یک رقم. 0 برای یکشنبه و 6 برای شنبه

W شماره هفته از اول سال. مانند 21 برای نشان دادن هفته 21ام سال

y سال در فرمت دورقمی . 05 برای 2005

Y سال در فرمت چهار رقمی مانند 2006

z روز را مشخص می کند. محدوده آن 0 تا 365 است.

Z افست منطقه زمانی را بر حسب ثانیه بیان می کند. محدوده آن بین 43200- و 43200 است.

تابع time()

این تابع زملان فعلی سیستم را به صورت یک عدد صحیح نمایش میدهد که مشخص میکند چند ثانیه از تاریخ اول ژوئن ۱۹۷۰ گذشته است.این مبدا را زمان Unix epoch می نامند و عددی که بر حسب ثانیه برگردانده میشود مهر زمان یا time stamp نامیده میشود.دستور زیر را ببینید :

echo time();

خروجی این دستور عددی مثل 1330085826 می باشد که می توان آن را به تاریخ و زمان تبدیل کرد.

تابع mktime()

این تابع برای ما یک timestamp تولید میکند.شکل کلی آن به این صورت هستش :

mktime(hour,minute,second,month,day,year,is_dst) 

پارامتر hour برای ساعت

پارامتر minute برای دقیقه

پارامتر second برای ثانیه

پارامتر month برای ماه

پارامتر day برای روز

پارامتر year برای سال

پارامتر is_dst برای daylight savings time که اگر تنظیم نشود مقدار آن به طور پیشفرض -۱ هستش به معنی اینکه نمیدونید دارید daylight savings رو یا خیر و یا ۰ میگیرد به معنی خاموش بودن این سیستم و ۱ به معنی روشن بودن این سیستم.

این هم یه مثال برای این موضوع:

<?php
echo "emruz : ".date("jS F Y")."
";
echo "Format RFC822 : ".date("r")."
";
echo "tarikho zamane emruz : ".date("H:i, jS F Y")."
";
echo "shomare hafte : ".date("W")."
";
$nextweek= time() + (7*24*60*60);
echo "hafteye ayande : ".date("Y-m-d",$nextweek)."
";
$farda = mktime(0, 0, 0, date("m"), date("d")+1, date("y"));
echo "farda : ".date("m/d/y", $farda)."
"; 
echo "July 7, 1991 is on a " . date("l", mktime(0, 0, 0, 7, 7, 1991));
?>

که خروجیش به این صورت هستش :

download.php?imgf=13300961471.png

-------------

پیروز باشید

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

با سلام مجدد خدمت همه ی دوستان

شرمنده دیر به دیر آموزش میزارم ... :(

خب چند تابع دیگه و کاربردی رو معرفی میکنم بهتون

کسب اطلاعات راجع به پیکربندی PHP

تابع phpinfo() اطلاعاتی را در مورد حالت و ئیکربندی فعلی php در اختیار ما قرار می دهد. کاربرد این تابع به این صورت هستش :

<?php
phpinfo();
?>

تعیین و تبدیل نوع متغیرها

تابع gettype()

این تابع نوع فعلی متغیر را تعیین می کند و به این صورت استفاده می شود :

gettype(variable);

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

<?php
$a= 20;
echo gettype($a);
?>

چون $a نوعش integer هستش در صفحه مرورگر چاپ میشود : integer

تابع settype()

این تابع نوع فعلی متغیر را تغییر می دهد وشکل کلی آن به این صورت هستش :

settype(variable , 'newtype');

variable مشخص می کند چه متغیری باید عوض شود و newtype نوع جدید متغیر هستش

<?php
$a= 10;
echo gettype($a)."
";
settype($a,'double');
echo gettype($a);
?>

ابتدا integer چاپ میشود و بعد double :)

تبدیل نوع با type casting

وقتی با استفاده از settype نوع متغیر را تغییر دهیم ، نوع اصلی متغیر هستش که تغییر می کند. اما در type casting یک کپی از متغیر گرفته شده و به نوع دیگری تبدیل می شود و نوع اصلی متغیر تغییر نمیکند

برای تغییر نوع از طریق casting باید نام نوع مورد نظر را در جلوی متغیری که می خواهید از آن کئی بردرای کنید در داخل پرانتز قرار دهید. دستورات زیر را ببینید :

$x = 13.15;
$y = (integer) $x;

دستور اول $x را برابر 13.5 قرار می دهد که double هستش و دستور دوم متغیر $y را از $x می سازد که از نوع integer هستش و مقدار آن 13 می باشد

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

سلام آقا سروش عزیز.

یک سوال داشتم. شما این هایی را که راجع به تاریخ گفتید ، تاریخ میلادی هست. امکانش هست که شمسی را هم توضیج بفرمایید؟ اگر تاریخ قمری را هم اضافه کنید عالی می شود.

راستی کد تاریخی که دادید خط آخرش یعنی این خط:

echo "July 7, 1991 is on a " . date("l", mktime(0, 0, 0, 7, 7$

مشکل دارد. من هرچی سعی کردم درستش کنم نشد. لطفا درستش کنید.

این ارور را می دهد:

Parse error: syntax error, unexpected '$' in C:\wamp\www\4.php on line 10

همچنین در پست دومی که دادید کد دوم صحیح نیست:

$y (integer) $x; 

این هم این ارور را می دهد:

Parse error: syntax error, unexpected T_INT_CAST in C:\wamp\www\5.php on line 10

خیلی ممنون از زحماتتون.

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

سلام

ممنون که اطلاع دادین.اصلاح شدند.

در مورد تاریخ شمسی هم بعد از توضیح نحوه ی نوشتن function به این موضوع میپردازیم و یکی از تاریخ شمسی های موجود رو قرار میدم و نحوه ی استفاده ازش رو میگم (به احتمال قوی نسخه iranphp اگر تا اون موقع بهتر نیومده باشه)

--------------

پیروز باشید

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

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

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


×
×
  • افزودن...