توابع مهم و کاربردی php قسمت اول

توابع مهم و کاربردی php قسمت اول

در این پست یک سری از توابع مهم و پرکاربرد php را قرار دادیم

این تابع بیشتر به درد پارسی زبان ها می خوره با قرار دادن یکی از کد های کلمات فارسی به شکل صحیح خودشون نشان داده می شوند و متن ها را به صورت utf-8 نمایش می دهد

header('Content-type: text/plain; charset=utf-8');

// برای زمانی که متن خروجی شما با ساختار جیسون باشد می توانید از این کد استفاده کنید
header('Content-Type: application/json ; charset=utf-8 ');

 

برای تبدیل ارایه به رشته جیسون

echo json_encode($myArray,JSON_UNESCAPED_UNICODE);

چند مثال ساده:

$myArray['site']='Nitro Code';
$myArray['name']='Benyamin';
//خروجی \/
{"site":"Nitro Code","name":"Benyamin"}
//--------------------------------------
$myArray[]="blue";
$myArray[]="red";
$myArray[]="white";
// خروجی
{"blue","red","white"}

این تابع یک ورودی دریافت می کند و اگر ورودی ما تماما از عدد تشکیل شده باشد مقدار true و در غیر این صورت false را بر می گرداند

$bool=is_numeric($value);

 

برای بدست اوردن زمان ایران از سرور از تابع زیر استفاده می کنیم

public function getIranTime(){
        date_default_timezone_set("Asia/Tehran");
        return date('Y/m/d H:i:s');
    }

 

برای تولید رشته های تصادفی از تابع زیر استفاده می شود

public function generateRandomString($length = 10)
    {
    return substr(sha1(rand()), 0, $length));
    }

بدست اوردن تعداد عناصر یک ارایه

count($str);

 

برای مقایسه دو رشته با هم از strcasecmp($str1,$str2 ) استفاده می کنیم این تابع بین حروف کوچک و بزرگ حساس نیست

اماتابع Strcmp($str1,$str2) مقایسه را انجام می دهد و نسبت به حروف کوچک و بزرگ حساس است اگر دو رشته کاملا با هم برابر باشند مقدار 0 را بر می گرداند اگر با هم برابر نباشند مقدار -1

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

function intoTime($now,$start,$end)

{

$t_now = newDateTime($now);

$t_start = newDateTime($start);

$t_end = newDateTime($end);




$pmam=$t_now->format('a');

if($pmam=='am' && $t_end<$t_start && ($t_now < $t_end ) ){

return true;

}

elseif($pmam=='pm' && $t_end<$t_start && $t_now > $t_start){

return true;

}

elseif($pmam=='pm' && $t_end<$t_start && $t_now < $t_start && $t_now <$t_end ){

return true;

}

elseif($t_now>$t_start && $t_now<$t_end) {

return true;

}

else{

return false;

}

}

// for usage sample : 
intoTime('12:00','11:00','15:00'); // true

// sample 2 
intoTime('05:20','23:00','06:00'); // true

// sample 3
intoTime('07:30','23:00','06:00'); // false

در این مثال برسی کردیم که ساعت 12 در بین بازه زمانی 11 تا 15 هست یا خیر . می تونید تابع بالا رو تست کنید که درست کار میکنه یا خیر اگرم راهی بهتر برای انجامش دارید بگید 🙂