تشخیص و تغییر نوع داده ها در  زبان برنامه نویسی php

در این مقاله قصد داریم تا یک سری توابع php که در زمینه ی تشخیص و تغییر نوع داده ها کاربرد دارند را به شما معرفی کنیم و با استفاده از این توابع نوع داده های ذخیره شده در هر متغیر را تغییر دهیم. گاهی اوقات لازم است که ما یک عدد که به صورت رشته ذخیره شده است را تبدیل به integer کنیم و یا عدد 1 که به صورت منطقی هست را تبدیل به integer کنیم. تصور کنید که در یک فرم، می خواهیم سن کاربر را دریافت کنیم و باید چک کنیم که سن کاربر حتما به صورت یک عدد باشد یا در بسیاری از جاهای دیگر ممکن است که ما از این توابع استفاده کنیم. در ادامه ی این مطلب به صورت کامل توابع و ابزارهایی که php برای تشخیص و تعیین در اختیار ما می گذارد را به شما معرفی خواهیم کرد.

 

تابع gettype

این تابع یک ورودی را دریافت می کند و نوع آن ورودی را برمی گرداند. مثلا اگر یک متغیر که در آن یک عدد صحیح ذخیره شده است را بدهیم، مقدار integer را در خروجی به ما نمایش می دهد. به کد زیر توجه کنید:

<?php
  $names = [ "Mohammad" , "Reza" , "Mehran" ];
  echo gettype($names);

خروجی کد بالا array خواهد بود.

 

تابع settype

با استفاده از این تابع میتوان یک نوع جدید را به یک متغیر نسبت داد. به عنوان مثال ممکن است که ما یک متغیر که در آن مقدار true به صورت منطفقی وجو دارد را خروجی بگیریم. خروجی آن 1 خواهد بود اما این یک، از نوع boolean است و ما میخواهیم آنرا به زشته یا عدد صحیح تبدیل کنیم. برای این کار میتوانیم از تابع settype استفاده کنیم. تابع settype دو مقدار را به عنوان ورودی دریافت می کند. مقدار اول متغیری است که میخواهیم نوع داده ی آن را تغییر دهیم و مقدار دوم نوعی است که میخواهیم به آن تبدیل شود. به کد زیر توجه کنید:

<?php
 $status = true;

 //settype to integer
 settype ( $status , "integer" );

 //settype to string
 settype ($status , "string");
 

 

چک کردن نوع داده در php

در php تعدادی تابع وجود دارند که به ما کمک می کنند که متوجه شویم که آیا نوع این داده برابر با آن چیزی که میخواهیم هست یا نه. خروجی این توابع به صورت boolean هستند و خروجی آنها مقادیر null یا 1 است. لیست این توبع را در ادامه می توانید مشاهده کنید.

<?php

$a = 10;

echo  is_array($a);
//output is null

echo is_bool($a);
//output is null

echo is_float($a);
//output is null

echo is_string($a);
//output is null

echo is_int($a);
//output is  1

توابعی که در بالا ذکر شده اند در زمینه های مختلفی کاربرد دارند. مثلا ما می خواهیم سن کاربر را بگیریم. با استفاده از تابع is_int می توانیم چک کنیم که اگر ورودی ای که کاربر به ما داده است از نوع عدد صحیح نبود یک پیغام خط برای کاربر فرستاده شود. امیدواریم این مطلب برای شما مفید بوده باشد. 


ارسال نظر