ورود

نسخه کامل مشاهده نسخه کامل : اشتباهات تايپي در php



mb1372
16-09-2011, 23:02
سلام دوستان
يه چيزايي هست كه توي برنامه نويسي با هم اشتباه ميگيرم:20:.اگه ميشه كاربرد هر كدوم رو بنويسد(با يك خط كد بي زحمت:11:)
1-فرق يك دونه علامت (=) با دو تا (==)و يا سه تاش(===) در چيه؟
2-كجا ( ' ) و كجا ( " ) استفاده ميشه؟
3-كجا (;) و كجا ( , ) استفاده ميشه؟

m.m.m5651
17-09-2011, 20:37
سلام.
1) = برای ست کردن تغییر بذیر، == در IF ها یعنی اگر تغییر پذیر برابر بود با، و === در IF ها یعنی اگر تغییر پذیر یا هرچیزی TRUE یا FALSE بود. (بولین)
2) بستگی داره، جفتش یکی هست اما وقتی میخواید \n رو بنویسید، باید از " " استفاده کنید. بقیه جاها هم میتونید از ' ' استفاده کنید.
3) ; در آخر هر دستور کد و , برای جداکردن پارامتر ها از هم (در تابع ها) استفاده میشن. البته کاربرد های دیگری هم دارن.

mb1372
17-09-2011, 21:47
یعنی اگر تغییر پذیر یا هرچیزی TRUE یا FALSE بود. (بولین)

ممنون
ميشه بيشتر در اين مورد توضيح بدي يا كدي چيزي بذاري؟:11:

neopersia
17-09-2011, 22:31
در تکمیل جواب avardeh:

علامت == برای مقایسه دو مقدار استفاده میشه. اگر دو طرف مساوی باشند نتیجه true هست وگرنه false. در این نوع مقایسه php نوع مقادیر رو برای انجام مقایسه تغییر میده. مثلاً وقتی یک رشته خالی رو با عدد 0 با این روش مقایسه کنید نتیجه true خواهد بود، نتیجه مقایسه '1234' == 1234 هم به همین صورت true هست:

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

علامت === هم دقیقاً همین کار رو انجام میده با یک تفاوت. در این نوع مقایسه دیگه php تغییر نوع دیتا را انجام نمیده. پس دیگه استرینگ خالی با عدد 0 نتیجه false میشه. شرط '1234' === 1234 هم به همین صورت false هست. نتیجه فقط در صورتی true خواهد بود که نوع دیتا در هر دو طرف علامت === یکسان باشه:

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


فرق دو نوع کوتیشن هم در این هست که در " متغیرها و کاراکترهای خاصی مثل r\، n\ و سایر کاراکتر ها که معنی خاصی دارند در این نوع کوتیشن توسط php شناسایی می شوند اما در ' فقط متن ساده داخل کوتیشن درنظر گرفته میشه و هیچ پردازش اضافی توسط php روی متن انجام نمیشه


استفاده ; و , هم با هم تداخلی نداره. هر کدوم در محل خاص خودش استفاده میشه که باید خودتون یاد بگیرید

900913
18-09-2011, 01:24
آقا من هم دو تا سوال دارم همینجا میپرسم :

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

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