ลงทะเบียน
ใกล้กัน ช่วยให้คุณแชร์เรื่องราวต่างๆ กับผู้คนมากมาย

PHP ที่ใช้บ่อยจะมีประโยชน์มากสำหรับนักพัฒนาในระหว่างเขี ยนโปรแกรมฯ ก็อปไปใช้ได้ทันที ช่วยให้ทำงานได้เร็วกว่าการพิมพ์ทุกตัวแน่นอน

 

คำนวนจำนวนหน้าจากข้อมูลทั้งหมด สำหรับใช้ทำตัวเลื่อนหน้า Pagination

if ($numCountTotalList) {
    $numTotalRow = $numCountTotalList;
    $numTotalPage = ceil($numTotalRow / $LIMIT);

    $arrListPaginationData = [
        "TotalRow" => $numTotalRow
        , "TotalPage" => $numTotalPage,
    ];
} //if

ล้างข้อมูล Html Style ที่ก็อปมาจาก Ms Words

function cleanWordsStyle( $dbStyleWords = "" ) {
    if ( $dbStyleWords == "" ) return;
    $htmDecode = htmlspecialchars_decode( $dbStyleWords );
    return preg_replace( '/style=\\"[^\\"]*\\"/', '', $htmDecode );
  }

 

เปลี่ยนการเชื่อมต่อ mysql ใน PHP5 เป็น mysqli ใน PHP7

$hostname_host = "localhost";
$database_host = "db-name";
$username_host = 'user-name';
$password_host = 'db-Pass';
$ConnectName = mysqli_connect($hostname_host, $username_host, $password_host) or trigger_error(mysqli_error(),E_USER_ERROR); 
mysqli_query($ConnectName, "SET NAMES 'UTF8'");
mysqli_select_db($ConnectName, $database_host);
mysqli_real_escape_string($ConnectName, $theValue);
mysqli_query($ConnectName, $QuerySQL)	
mysqli_close($ConnectName);

 

ย้ายไฟล์ไปยังโฟลเดอร์อื่น

/**
   * ย้ายไฟล์ไปยังโฟลเดอร์อื่น
   * bool moveToTemp( $fromFile, $toFile );
*/
function moveToTemp( $fromFile="", $toFile="" ) {
	$isMoveSuccess = false;
	$fromFile = trim( $fromFile );
	$toFile = trim( $toFile );
	if ( empty( $fromFile ) || empty( $toFile ) ) return $isMoveSuccess;
	$fromFileWithFol = $fromFile;
	$toFileWithFol = $toFile;
	
    if(rename ( $fromFileWithFol, $toFileWithFol )) {
		$isMoveSuccess = true;
		}	
	return $isMoveSuccess;
	}

ตรวจสอบมีภาษาอังกฤษซ่อนในข้อความหรือไม่

/**
   * ตรวจสอบมีภาษาอังกฤษซ่อนในข้อความหรือไม่
   * bool IsEnglishText( $text="" ); //output: true or false
*/
function IsEnglishText( $text="" ) {
	$isEnglish = false;
	$text = trim( $text );
	if( empty($text) )return $isEnglish;
	
	$textRegex = "[aeiou]";
	if( preg_match("/{$textRegex}/i", $text ) ){
		$isEnglish = true;
		}	
	return $isEnglish;
	} //func

 

ลบคำนำหน้าชื่อบริษัท

/**
   * ลบคำนำหน้าชื่อบริษัท
   * string setRemoveCompanyHead( "บมจ.ใกล้กัน" ); //output: ใกล้กัน
*/
function setRemoveCompanyHead( $companyName="" ) {
	$companyName = trim( $companyName );
	if( empty($companyName) )return;
	
    $arrHeadName = array( "บจก.", "บมจ.", "หจก." );	
	$companyName = str_replace( $arrHeadName, '', $companyName );
	$companyName = trim( $companyName ) ;
	
	return $companyName;
	} //func

 

ฟอร์แมตข้อความสำหรับ Query การค้นหาในฐานข้อมูล SQL

function setWordExtend( $txtSearch="" ) {
	$txtSearch = trim( $txtSearch );
    if ( empty( $txtSearch ) ) return;

	//clear space on load
	if( preg_match("/ /", $txtSearch) ) {
		$txtSearch = str_replace( ' ', '%', $txtSearch );
		}
	
	$arrWords = array(
		"บจก" =>  "%บจก%"
		, "บมจ" =>  "%บมจ%"
		, "หจก" =>  "%หจก%"	
		);
	
	foreach( $arrWords as $keyWords => $valWords ) {		
		if( preg_match("/{$keyWords}/i", $txtSearch ) ){
		$txtSearch = str_replace( $keyWords, $valWords, $txtSearch );
		}		
		} //foreach
	
	return $txtSearch;
	} //func

กรองเอาเฉพาะวันที่

/**
   * กรองเอาเฉพาะวันที่
   * string getSlashDateOnlyFromText( '12/09/1984 XX' ); //output: 12/09/1984
*/
function getSlashDateOnlyFromText( $number="" ) {	
	$number = trim( $number );
	if( empty($number) )return;	
	$number = preg_replace( "/[^\d\/]/", "", $number );	
	return $number;
	}

 

กรองเอาเฉพาะเวลา

/**
   * กรองเอาเฉพาะเวลา
   * string getTimeOnlyFromText( '12.00 AM' ); //output: 12:00
*/
function getTimeOnlyFromText( $number="" ) {	
	$number = trim( $number );
	if( empty($number) )return;	
	$number = str_replace( ".", ":", $number );	
	$number = preg_replace( "/[^\d\:]/", "", $number );	
	return $number;
	}

 

ฟอร์แมตตัวเลขให้มีคอมม่าขั้น + รองรับจุดทศนิยม(ตาม Input)

/**
   * ฟอร์แมตตัวเลขให้มีคอมม่าขั้น + รองรับจุดทศนิยม(ตาม Input)
   * string numPrice( 10000 ) //output: 10,000
*/
function numPriceFormat( $number ) {
	$number = doubleval($number);
	
    if (preg_match("/\./", $number)) {
        $valNum = number_format($number, 2);
    } elseif (is_numeric($number)) {
        $valNum = number_format($number);
    } else {
        $valNum = $number;
    }
    return $valNum;
}

 

ป้องกันเบอร์โทรด้วยฟอร์แมต XXX ไว้ 3 ตัวท้าย

วิธีใช้: getTelePhoneProtection( 0865555556 ); //Output: 08655xxx56

function getTelePhoneProtection( $telephone="" ) {
	$telephone = trim( $telephone );
    if ( empty( $telephone ) ) return;
	//get only number
	$telephone = getNumberOnlyFromText( $telephone );
	//number format
	$firstFiveNumber = substr( $telephone, 0, 5 );
	$lastTwoNumber = substr( $telephone, -2 );	
	//Merge
	$telephone = "{$firstFiveNumber}xxx{$lastTwoNumber}";
	
	return $telephone;
	}

 

คัดเอาเฉพาะตัวเลขเท่านั้น (ไม่เอาตัวอักษรอื่นที่ไม่ใช่ตัวเลข)

/**
   * คัดเอาเฉพาะตัวเลขเท่านั้น (ไม่เอาตัวอักษรอื่นที่ไม่ใช่ตัวเลข)
   * string getNumberOnlyFromText( '086-666-6666' ); //output: 0866666666
*/
function getNumberOnlyFromText( $number="" ) {	
	$number = trim( $number );
	if( empty($number) )return;
	
	$number = preg_replace( "/[^\d]/", "", $number );
	
	return $number;
	}

 

นับตัวอักษรภาษาไทย

 getLenString("สวัสดี"); // Output: 6
function getLenString( $text = "" ) {
    $numLen = 0;
    $text = trim( $text );
    if ( empty( $text ) ) return $numLen;
    $numLen = mb_strlen( $text, "UTF-8" );

    return $numLen;
}

 

ตรวจสอบชนิดไฟล์เป็นรูปภาพ ใช่หรือหม่

function getIsImage( $filename="" ) {
	$isImage = false;
	$filename = trim( $filename );
	if( empty($filename) )return $isImage;
	
	$extension = pathinfo( $filename, PATHINFO_EXTENSION );
	$extension = trim( $extension );
	$extension = strtolower( $extension );
	$arrExtensionImage = array(
		"jpg", "jpeg", "png", "gif"
		);
	if( in_array($extension, $arrExtensionImage) ) {
		$isImage = true;
	}
	
	return $isImage;
	}

 

ดึง Array 2 ตัวแรกออกออกมา และลบ Array 2 ตัวที่ดึงออก

$a1 = array( "key1" => "red", "key2" => "green", "key3" => "blue", "key4" => "yellow" );
$a2 = array_slice( $a1, 0, 2, true ); //Output: Array ( [key1] => red [key2] => green )
array_splice( $a1, 0, 2 ); //Output: Array ( [key3] => blue [key4] => yellow )

print_r( $a1 );
print_r( $a2 )

 

การรวม Array แบบรวม Index ต่อเนื่อง 0, 1, 2, 3

$array1 = array_merge( $array1, $array2 );

 

การรวม Array แบบรวม Index ไม่ต่อเนื่อง Associative arrays 

$array1 = $array1 + $array2; 

 

แสดงไอคอนประเภททรัพย์ใช้ร่วมกับ CSS

//ส่วนของ CSS วิธีใช้: div: icon condo

.icon::before {
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  height: 20px;
  width: 20px;
  float: left;
  margin-right: 5px;
}
.condo::before {
  content: "";
  display: block;
  background: url(/images/mywebsite/icon-condo.svg);
}
.house::before {
  content: "";
  display: block;
  background: url(/images/mywebsite/icon-house-01.svg);
}
.townhouse::before {
  content: "";
  display: block;
  background: url(/images/mywebsite/icon-townhouse.svg);
}
.apartment::before {
  content: "";
  display: block;
  background: url(/images/mywebsite/icon-apartment.svg);
}
.land::before {
  content: "";
  display: block;
  background: url(/images/mywebsite/icon-land.svg);
}



//ส่วนของ PHP
function getCssPropertyType($propertytypeID = "") {
    $cssPropertyType = "condo"; //default
    $propertytypeID = intval($propertytypeID);
    if (!$propertytypeID) {
        return $cssPropertyType;
    }

    switch ($propertytypeID) {
    case 1:
        $cssPropertyType = "house";
        break;
    case 2:
        $cssPropertyType = "condo";
        break;
    case 3:
        $cssPropertyType = "townhouse";
        break;
    case 5:
        $cssPropertyType = "apartment";
        break;
    case 8:
        $cssPropertyType = "land";
        break;
    } //switch

    return $cssPropertyType;
} //func

 

ตรวจสอบเป็น Array ไม่ใช่ค่าว่าง

function isArrAvailable($array=array()) {
$boolArrAvailable = false;
if(empty($array))return $boolArrAvailable;

if(is_array($array)&&sizeof($array)) {
    $boolArrAvailable = true;
	}

return $boolArrAvailable;
}
//Output: True or Fasle

 

รับเฉพาะ Array ตัวแรกสุด (สำหรับ PHP 7.3.0+)

$array = array(
    33 => 'guimee', 
    36 => 'for', 
    42 => 'computer'
  );
$keyFirst = getArrFirst( $array ); //Output: [33] => guimee

function getArrFirst($array = array()) {
    $arrFirst = array();
    if (empty($array)) {
        return $arrFirst;
    }
    $keyFirst = array_key_first($array);
    $arrFirst[$keyFirst] = $array[$keyFirst];
    return $arrFirst;
}

 

การจับเวลาทำงานของ PHP ใช้ microtime() สำหรับเทียบเวลาเริ่มต้นกับเวลาสิ้นสุด

// starting time
$time_start = microtime( true );

// Code of program
$num = 0;

// do
for ( $i = 0; $i < 100000000; $i += 1 ) {
  $num += 10;
}

// ending time
$time_end = microtime( true );

// Time difference
$time = $time_end - $time_start;

$time = number_format( $time, 4 );

echo "{$time} Seconds"; //Output: 1.4328 Seconds

 

ตรวจสอบข้อความเป็นวันที่หรือเปล่า

if (strtotime($date_string)) {
    // it's in date format
}

 

ตัดคำภาษาไทยให้เหลือตามจำนวน(ตัวอักษร) ที่ต้องการ เช่นหากเกิน 300 ตัวอักษร ให้ใส่จัดไข่ปลา 3 จุด(...) ท้ายข้อความ

function WordCutter($text = "", $max = 300) {
    $text = trim($text);
    if (empty($text)) {
        return $text;
    }
    if (mb_strlen($text, 'UTF-8') > $max) {
        $text = mb_substr($text, 0, $max, 'UTF-8');
        $text .= "...";
    }

    return $text;
}

 

ลดขนาดรูปภาพบน Wordpress.com ลดตามขนาดที่เราต้องการเช่นความกว้าง 900 เพื่อแก้ปัญหาหากรูปมีชนาดใหญ่จะทำให้โหลดหน้าเว็บช้า

function setWpImage($image = "", $width = 900) {
    $image = trim($image);
    if (empty($image)) {
        return $image;
    }

    //check wordpress
    if (!preg_match("/wordpress/i", $image)) {
        return $image;
    }

    //check width format
    if (!preg_match("/w=/i", $image)) {
        $image = "{$image}?w={$width}";
    }

    return $image;
} //func

 

แปลง Multidimensional Arrays เป็นอาเรย์(Array) ปกติ

function array_flatten( $array ) {
  if ( !is_array( $array ) ) {
    return FALSE;
  }
  $result = array();
  foreach ( $array as $key => $value ) {
    if ( is_array( $value ) ) {
      $result[] = $array[ $key ];
    } else {
      $result[] = $value;
    }
  }
  return $result;
}

Multidimensional Arrays

 

หลังจากแปลงเป็นอาเรย์(Array) ปกติ

 

 

การตัด Query ออกจาก URL 

/**
   * cleanQueryFormURL( $url="" );
*/
function cleanQueryFormURL( $url="" ) {
	if(empty($url))return;	
	$arrUrl = pathinfo( $url );
	$dirName = $arrUrl["dirname"];
	$baseName = $arrUrl["basename"];
	$arrUrl = parse_url( $baseName );
	$pathFilename = $arrUrl["path"];
	if( isFilenameFilter( $pathFilename ) ) {
		$url = "{$dirName}/{$pathFilename}";
		}	
	return $url;
	} //func

function isFilenameFilter( $filename="" ) {
	$isFilename = false;
	$filename = trim( $filename );
	if(empty($filename))return $isFilename;
	// here add filename
	$arrFileName = array(
		"value.php"
		);
	if( in_array($filename, $arrFileName) ) {
		$isFilename = true;
		}	
	return $isFilename;
	} //func

 

ตรวจสอบข้อความเป็นข้อมูลชนิดวันที่หรือไม่

if (DateTime::createFromFormat('Y-m-d H:i:s', $myString) !== false) {
  // it's a date
}

 

ฟอร์แมตเบอร์โทร ด้วย PHP สำหรับใส่ขีดขั้นระหว่างตัวเลขให้อ่านง่าย ดูสวยงาม

วิธีแรก (แนะนำ):

function phoneNumberFormat( $number ) {
  // Allow only Digits, remove all other characters.
  $number = preg_replace( "/[^\d]/", "", $number );

  // get number length.
  $length = strlen( $number );

  if ( $length == 10 ) {
		$number = preg_replace( "/^1?(\d{3})(\d{3})(\d{4})$/", "$1-$2-$3", $number );
  	}
	elseif($length == 9) {
		$number = "0{$number}";
		$number = preg_replace( "/^1?(\d{3})(\d{3})(\d{4})$/", "$1-$2-$3", $number );
	} //if

  return $number;
}

วิธีที่สอง:

echo PhoneFormatting( "0888888888" ); //OUTPUT: 088-888-8888
echo PhoneFormatting( "022222222" ); //OUTPUT: 022-222-222
echo PhoneFormatting( "+02025550170" ); //OUTPUT: 202-555-0170

function PhoneFormatting( $phone="" ) {
  $phone = trim($phone);
  if( $phone=="" )return $phone;

  if ( preg_match( '/^\+[0-9]([0-9]{3})([0-9]{3})([0-9]{4})$/', $phone, $value ) || preg_match( '/^([0-9]{3})([0-9]{3})([0-9]{4})$/', $phone, $value ) || preg_match( '/^([0-9]{3})([0-9]{3})([0-9]{3})$/', $phone, $value ) ) {
	 $arrValue[] = $value[1];
	 $arrValue[] = $value[2];
	 $arrValue[] = $value[3];
	  
	$phone = implode( "-", $arrValue );
	}//if

  return $phone;
  }//func

 วิธีที่สาม:

/**
   * ฟอร์แมตเบอร์โทร รองรับ ( '0875552233', '+11234567890' )
   * string TelephoneFormat( '0875552233' ); //output: 087-555-2233
*/
function TelephoneFormat( $telephone="" ) {
    $telephone = trim( $telephone );
    if ( empty( $telephone ) ) return;

	if( preg_match( '/^(\d{3})(\d{3})(\d{4})$/', $telephone,  $matches ) || preg_match( '/^\+\d(\d{3})(\d{3})(\d{4})$/', $telephone,  $matches ) ) {
		$telephone = $matches[1] . '-' .$matches[2] . '-' . $matches[3];
	}

	return $telephone;
	}

 

เริ่มต้นใช้ Session ด้วย PHP

if (!isset($_SESSION)) {
    session_start();
}

 

ลบข้อมูลที่ไม่ต้องการออกจาก Array ด้วย PHP

if (in_array($showPlistID, $arrPropList)) {
//หาตำแหน่ง Array $keyShowPlist = array_search($showPlistID, $arrPropList);
//remove by key if ($keyShowPlist) { unset($arrPropList[$keyShowPlist]); } }

 

เปลี่ยนค่า URL สำหรับทำตัวเลื่อนหน้าเช่น 1 2 3 (ความเป็นจริงคือ URL มี Parameter หลายค่า แต่เราต้องการเปลี่ยนเพียงค่า year ค่าเดียว)

วิธีใช้: setNormalQuery( "2021" ); OUTPUT: year=2021&p1=1&...

function setNormalQuery( $year="", $paramName="year" ) {
  if ( $year == "" ) return;
  $arrQuery = array();
  $uriLocation = $_SERVER[ 'REQUEST_URI' ];
  $arrURL = parse_url( $uriLocation );
  $val_Qurey = $arrURL[ "query" ];

  if ( $val_Qurey != "" ) {
    parse_str( $val_Qurey, $arrQuery );
    $arrQuery[ $paramName ] = $year;
  }
  //remake
  $year = http_build_query( $arrQuery );

  return $year;
}

 

Remote Image ดึงรูปภาพจากเว็บอื่นมาแสดงบนเว็บมี SSL

$get_Image = trim($_GET["Image"]);

if( $get_Image=="" )die;

$filename = basename($get_Image);
$file_extension = strtolower(substr(strrchr($filename,"."),1));
if($file_extension=="")die;

switch( $file_extension ) {
    case "gif": $ctype="image/gif"; break;
    case "png": $ctype="image/png"; break;
    case "jpeg":
    case "jpg": $ctype="image/jpeg"; break;
    case "svg": $ctype="image/svg+xml"; break;
    default:
}
header('Content-type: ' . $ctype);

$pathFol = "http://[domain]/images/img_gps";
$ImagePath = "{$pathFol}/{$get_Image}";

echo @file_get_contents( $ImagePath );

 

นับจำนวนวันจากเดือนที่ระบุมีกี่วันด้วย PHP

//วิธีใช้: MonthDays('02','2021'); OUTPUT: 28
function MonthDays($someMonth, $someYear)
{
    return date("t", strtotime($someYear . "-" . $someMonth . "-01"));
}

 

ลบแท็ก Style และ Font-size ออกจาก Html ด้วย PHP

function removeFontSize_v2( $html="" ) {
	$html = trim( $html );
	if( $html=="" )return;
		
	return preg_replace('/font-size:..px/i', "", $html);
}
	
function removeStyleTag_v2( $html="" ) {
	$html = trim( $html );
	if( $html=="" )return;
	
    return preg_replace( '/(<[^>]+) style=".*?"/i', '$1', $html );
}

 

ตรวจสอบ Trust Domain ด้วย HTTP_REFERER ใช้ประโยชน์โดยให้โปรแกรมทำงานเฉพาะส่งจาก Domain ที่เราระบุไว้เท่านั้นเช่น กรองสแปมอย่างได้ผล

function isTrustDomain( $domainRefer="" ) {
	$isTrust = 0;
	$domainRefer = trim( $domainRefer );
	if( $domainRefer=="" || !preg_match( "/http/i", $domainRefer ) )return $isTrust;
	
	$val_DomainName = getDomainNameFromURL( $domainRefer );
	
	$allowDomain = array( "guimee.com" ); //ระบุชื่อโดเมน
	foreach( $allowDomain as $valAllowDomain ) {
	if ( preg_match( "/{$valAllowDomain}/i", $val_DomainName ) ) {
		$isTrust = 1;
		break;
		}
	} //foreach
	
	return $isTrust;
	} //func

function getDomainNameFromURL( $url="" ) {
	$url = trim( $url );
	if( $url=="" || !preg_match( "/http/i", $url ) )return;
	
	  $arrURL = parse_url( $url );
	  $url = $arrURL[ "host" ];
	
	return $url;
	}//func

 

แปลงแท็ก BR เป็น New Line (nl)

function convertBr2Nl( $text ) {
    $breaks = array("< br />","< br>","< br/>");  
    $text = str_replace($breaks, "\r\n", $text);
return $text;	
}

 

รวมการเคาะหลายบรรทัดให้เหลือบรรทัดเดียว แนะนำให้ใช้ก่อนบันทึกใน database

function mergeMultiNewlineToOne( $text="" ) {
	  $text = trim( $text );
	  if ( $text == "" ) return;
	
	return preg_replace('"(\r?\n){2,}"', "\n\n", $text);
	}

 

ฟอร์แมต ชื่อ นามสกุลพร้อมคำนำหน้า หลังดึงข้อมูลจาก database

//Input: วรวุฒิ บุญวงค์ษา,คุณ
//Output: คุณวรวุฒิ บุญวงค์ษา
function setFullname($dbname = "")
{
    if ($dbname == "") return;

    if (preg_match("/,/i", $dbname)) {
        $arrName = explode(",", $dbname, 2);
        $dbname = "{$arrName[1]}{$arrName[0]}";
    } //if

    return $dbname;
} //func

 

ตรวจสอบ Browser ว่าทำงานอยู่บนเครื่อง MacOS หรือไม่

// TRUE = ใช่ MacOs
function isMacOS() { $isMacOS = false; $user_agent = getenv("HTTP_USER_AGENT"); if ( strpos( $user_agent, "Mac" ) !== FALSE ) { $isMacOS = true; } return $isMacOS; }//func

 

แปลงทศนิยม 6 หลักสำหรับ พิกัดละติจูดและลองจิจูดบนแผนที่

/**
   * shortPointFormat( 'ค่า Lat, Lon', 'ทศนิยมที่ต้องการ' );
*/
function shortPointFormat( $decimal="", $num=6 ) {
	$decimal = doubleval( $decimal );
	if( !$decimal )return 0;
	
	$decimal = number_format( $decimal, 6, ".", "" );
	$decimal = doubleval( $decimal );
return $decimal; }

 

เพิ่ม หรือลดเวลา ด้วย PHP

เวลาเริ่มต้น
$time = strtotime('10:00');

ระบุนาที $minut = 30; ลดลง 30 นาที $startTime = date("H:i", strtotime("-{$minut} minutes", $time)); //OUTPUT: 09:30 เพิ่มอีก 30 นาที $endTime = date("H:i", strtotime("+{$minut} minutes", $time)); //OUTPUT: 10:30

 

ลดเวลาโดยใช้ฟังค์ชั่น

/**
 * ลด เวลาเข้ามาเช่น 60 นาที
 * string timeDeCrease( '10:59' ); //Output: 09:59
 */
function timeDeCrease($timeText = "", $minute = 60) {
    $timeText = trim($timeText);
    $timeText = getTimeOnlyFromText($timeText);
    if (empty($timeText)) {
        return;
    }

    $time = strtotime($timeText);
    $timeText = date("H:i", strtotime("-{$minute} minutes", $time));

    return $timeText;
} //func

 

เพิ่มเวลาโดยใช้ฟังค์ชั่น

/**
 * เพิ่ม/เลื่อน เวลาออกไปเช่น 60 นาที
 * string timeInCrease( '10:59' ); //Output: 11:59
 */
function timeInCrease($timeText = "", $minute = 60) {
    $timeText = trim($timeText);
    $timeText = getTimeOnlyFromText($timeText);
    if (empty($timeText)) {
        return;
    }

    $time = strtotime($timeText);
    $timeText = date("H:i", strtotime("+{$minute} minutes", $time)); //OUTPUT: 10:30

    return $timeText;
} //func

 

ฟอร์แมตวันที่ให้คั้นด้วยสแลช(Slash /)

/**
   * แปลงข้อมูลวันที่แบบขึนกลาง (/)
   * string slashDateFormat( '1984-09-12' ); //Output: 12/09/1984
*/
function slashDateFormat( $strDate="" ){
	if( empty( $strDate ) )return;
	
	$strDate = str_replace('/', '-', $strDate);
	$slashDate = date('d/m/Y', strtotime($strDate));
	
	return $slashDate;
	}

 

ฟอร์แมตวันที่ให้คั้นด้วยขีดกลาง (Dash -) 

/**
   * แปลงข้อมูลวันที่แบบขึนกลาง (-)
   * string dashDateFormat( '12/09/1984' ); //Output: 1984-09-12
*/
function dashDateFormat( $strDate="" ){
	if( $strDate=="" )return;
	
	$strDate = str_replace('/', '-', $strDate);
	$dashDate = date('Y-m-d', strtotime($strDate));
	
	return $dashDate;
	}

 

เพิ่มเดือน หรือลดเดือน

$intMonth = 6;

// next 6 month
echo setExtendMonth( $intMonth ); //Output: 2022-04-20 00:00:00

// decrease 6 month
echo setDecreaseMonth( $intMonth ); //Output: 2021-04-20 00:00:00

//เดือน => เลยไปอีก
function setExtendMonth( $intMonth="", $strDate="" ) {
	$intMonth = intval( $intMonth );
	if( !$intMonth )return;
	//Current
	$curDate = ( !empty($strDate) )? $strDate : date( "Y-m-d H:i:s" );	
	//Next
	return date( 'Y-m-d H:i:s', strtotime( "+{$intMonth} month", strtotime( $curDate ) ) );
	}

//เดือน => ย้อนหลัง
function setDecreaseMonth( $intMonth="", $strDate="" ) {
	$intMonth = intval( $intMonth );
	if( !$intMonth )return;
	//Current
	$curDate = ( !empty($strDate) )? $strDate : date( "Y-m-d H:i:s" );	
	//Previous	
	return date( 'Y-m-d H:i:s', strtotime( "-{$intMonth} month", strtotime( $curDate ) ) );
	}

 

เพิ่มวันที่ หรือลดวันที่ ด้วย PHP

//วันที่ => ถัดไป
function setExtendDate( $intDate="", $manualDate="" ) {
	$intDate = intval( $intDate );
	if( !$intDate )return;
	//Current
	$curDate = ( !empty( $manualDate ) ) ? $manualDate : date( "Y-m-d" );
	//Next
	return date( 'Y-m-d H:i:s', strtotime( "+{$intDate} days", strtotime( $curDate ) ) );
	}

//วันที่ => ย้อนหลัง
function setDecreaseDate( $intDate="", $manualDate="" ) {
	$intDate = intval( $intDate );
	if( !$intDate )return;
	//Current
	$curDate = ( !empty( $manualDate ) ) ? $manualDate : date( "Y-m-d" );
	//Previous	
	return date( 'Y-m-d H:i:s', strtotime( "-{$intDate} days", strtotime( $curDate ) ) );
	}

 

แปลง Character เป็นรหัส ASCII ด้วย PHP

echo getCharToASCII("o"); //OUTPUT: & #149;

function getCharToASCII( $char="" ) {
	$char = trim( $char );
	if( $char=="" )return;
	
	$charOrd = _uniord( $char );	
	$char = "&#{$charOrd};";
	
return $char;
}

function _uniord($c) {
    if (ord($c{0}) >=0 && ord($c{0}) <= 127)
        return ord($c{0});
    if (ord($c{0}) >= 192 && ord($c{0}) <= 223)
        return (ord($c{0})-192)*64 + (ord($c{1})-128);
    if (ord($c{0}) >= 224 && ord($c{0}) <= 239)
        return (ord($c{0})-224)*4096 + (ord($c{1})-128)*64 + (ord($c{2})-128);
    if (ord($c{0}) >= 240 && ord($c{0}) <= 247)
        return (ord($c{0})-240)*262144 + (ord($c{1})-128)*4096 + (ord($c{2})-128)*64 + (ord($c{3})-128);
    if (ord($c{0}) >= 248 && ord($c{0}) <= 251)
        return (ord($c{0})-248)*16777216 + (ord($c{1})-128)*262144 + (ord($c{2})-128)*4096 + (ord($c{3})-128)*64 + (ord($c{4})-128);
    if (ord($c{0}) >= 252 && ord($c{0}) <= 253)
        return (ord($c{0})-252)*1073741824 + (ord($c{1})-128)*16777216 + (ord($c{2})-128)*262144 + (ord($c{3})-128)*4096 + (ord($c{4})-128)*64 + (ord($c{5})-128);
    if (ord($c{0}) >= 254 && ord($c{0}) <= 255)    //  error
        return FALSE;
    return 0;
}

 

กำหนดภาษาจากข้อความ ด้วย PHP

function getCharLangFormText($text = "")
{
    $charLang = 'TH';
    $text = trim($text);
    if ($text == "") {
        return $charLang;
    }

    $arrCharEng = ['a', 'e', 'i', 'o', 'u'];

    foreach ($arrCharEng as $valCharEng) {
        if (preg_match("/{$valCharEng}/i", $text)) {
            $charLang = 'EN';
            break;
        } //if
    } //foreach

    return $charLang;
}

 

แบ่งหน้า SQL Server 2019 ด้วย PHP

// #### Begin Pagination แบ่งหน้า {
$get_page = 1; //หน้า
$LIMIT = 12; //จำนวนข้อมูลที่ต้องการ

if ($get_page <= 0) {
    $page = 1;
} else {
    $page = $get_page;
}

$start = ($page - 1) * $LIMIT;

//$start = $start - 1;

//check
if ($start < 0) {
    $start = 0;
}

$sql_Pagination = "
		OFFSET {$start} ROWS
	FETCH NEXT {$LIMIT} ROWS ONLY
";

// #### End Pagination แบ่งหน้า }

 

แปลงพื้นที่ ตารางวา เป็น ตารางเมตร

/**
   * แปลง ตารางวา เป็น ตารางเมตร
   * float calcSqwToSqm( $Sqw = 0);
*/
function calcSqwToSqm($Sqw = 0) {
    $val_Sqm = 0;
    $Sqw = floatval($Sqw);
    if (!$Sqw) return $val_Sqm;

    $radioSqw = 4; // 1 ตร.ว. = 4 ตร.ม.
    $val_Sqm = $Sqw * $radioSqw;

    return $val_Sqm;
    }

 

คำนวนพื้นที่เป็นตารางวาด้วย PHP

function calcLandSQW($numRai = "", $numNgan = "", $numWah = "")
{
    $numRai = doubleval($numRai);
    $numNgan = doubleval($numNgan);
    $numWah = doubleval($numWah);

    if (!$numRai && !$numNgan && !$numWah) {
        return 0;
    }

    if ($numRai) {
        $numRai = ($numRai * 4) * 100; //400 ตรว. = 1 ไร่
    }
    if ($numNgan) {
        $numNgan = $numNgan * 100; //100 ตรว. = 1 งาน
    }
    return $numRai + $numNgan + $numWah;
}

 

ตรวจสอบอีเมล์ถูกต้องหรือไม่ด้วย PHP

/**
* ลบตัวอักษรเพี้ยนและตัวอักษรไทยทั้งหมดออกจากอีเมล์ */ function cleanEmail( $email="" ) { $email = trim( $email ); if( $email=="" )return; // Remove all illegal characters from email $email = filter_var( $email, FILTER_SANITIZE_EMAIL ); return $email; } /** * ตรวจอีเมล์ถูกต้องหรือไม่: TRUE OR FALSE */ function isValidEmail( $email="" ) { $email = trim( $email ); if( $email=="" )return FALSE; return (filter_var($email, FILTER_VALIDATE_EMAIL))? TRUE : FALSE; }

 

บันทึกรูปภาพจากข้อมูล Image Base64 ส่งจากเว็บ Browser ด้วย PHP (หากบันทึกสำเร็จจะส่งออกเป็นชื่อรูปภาพ)

/**
   * v2: save2ImageFilename( $imgBase64, array( "fol"=>, "file"=> ) );
*/
function save2ImageFilename( $imgBase64, $arrFolAndFile=array() ) {	
	//check
  if( !is_array($arrFolAndFile) || !sizeof($arrFolAndFile) )return;
	$arrAllowExtension = array( "jpeg", "jpg", "png", "gif" );
		 
  $val_folName = trim( $arrFolAndFile[ "fol" ] );
  $val_fileName = trim( $arrFolAndFile[ "file" ] );
		
	//check
	if($val_fileName=="")return;

	$image_parts = explode( ";base64,", $imgBase64 );
	$image_type_ext = explode( "image/", $image_parts[ 0 ] );	
	$exName =  $image_type_ext[1];	
	
	//new extension from image
  if ( in_array( $exName, $arrAllowExtension ) ) {		
		$arrFilename = explode( '.', $val_fileName );
		$strFilename = $arrFilename[0];
//		$oldFilenameExt = $arrFilename[1];
		$val_fileName = "{$strFilename}.{$exName}";
		}
	
	if($val_folName!="") {
			$pathFilename = "{$val_folName}/{$val_fileName}";
		}
		else {
			$pathFilename = $val_fileName;
		}
	
	$image_base64 = base64_decode( $image_parts[ 1 ] );
	if ( !@file_put_contents( $pathFilename, $image_base64 ) ) {	
		return;
		}
	
return $val_fileName;
}

 

ดูวันสิ้นสุดของเดือนด้วย PHP

ดูวันที่สิ้นสุดของเดือนนี้

$lastDayThisMonth = date("Y-m-t");

แสดงผลลัพท์
echo $lastDayThisMonth; //ouoput: 2021-04-30

จากเดือนที่กำหนดเอง

$dateString = '2014-02-04';
$lastDateOfMonth = date("Y-m-t", strtotime($dateString));

echo $lastDateOfMonth;

จาก DateTime object

กำหนด DateTime object ตามต้องการ
$date = new DateTime('2012-02-01'); 

แสดงผลพร้อมฟอร์แมตข้อมูล
echo $date->format('Y-m-t');
 

 

การรับชื่อไฟล์จาก URL ที่ระบุด้วย PHP

$url = "https://www.google.com/search/photo.jpg?client=firefox-b-d&q=javascript+prop";

$filename = getFilename( $url );
echo $filename; //output photo.jpg

function getFilename( $pathFilename="" ){
	$pathFilename = trim($pathFilename);
	if($pathFilename=="")return;
	
	if(preg_match( "/http/i", $pathFilename)) {
		$arrFilename = parse_url($pathFilename);
		
		$pathFilename = basename( $arrFilename["path"] ); 
		}
	
	return $pathFilename;
	}//func

 

เรียง Array หลายมิติจากค่าที่กำหนด (sort by array associative) ด้วย PHP 

//วิธีใช้: เรียง Array ด้วย ID ที่น้อยกว่าจะเรียงก่อน
$inventory = arraySortAssoc( $inventory, "id" );

print_r( $inventory );
$inventory = array(
  array(
    'id' => 4767,
    'first_name' => 'Woot',
    'last_name' => 'GM',
  ),
  array(
    'id' => 3809,
    'first_name' => 'Boo',
    'last_name' => 'Baan',
  )
);


/**
   * เรียง Array หลายมิติ โดยระบุชื่อคอลัมท์และการเรียงจากน้อยหรือมาก
   * array arraySortAssoc( $array, "asc" or "desc" );
*/
function arraySortAssoc( $array = "", $colSort, $typeSort = "asc" ) {
  if ( $array == "" ) return;
	
  $val_typeSort = SORT_ASC;
  if ( $typeSort = "desc" ) {
    $val_typeSort = SORT_DESC;
  }

  $arrColSort = array_column( $array, $colSort );
  array_multisort( $arrColSort, $val_typeSort, $array );

  return $array;
}

 

PHP ลบแท็ก Style ออกจากแท็ก HTML

return preg_replace( '/style=\\"[^\\"]*\\"/', '', $htmDecode );

 

PHP ลบค่าว่างออกจาก Array ด้วย  array_filter

$array = array_filter($array, "onlyFilterValue");

function onlyFilterValue($value) {
    return ($value != "") ? TRUE : FALSE;
}

 

PHP แทนที่หลายช่องว่างด้วยช่องว่างเดียว เช่นตัวอักษรถูกเคาะให้ให้ห่างกันมาก เราต้องการให้ห่างกันแค่เคาะเดียว

preg_replace('!\s+!', ' ', $input);

ตัวอยางการใช้ทำ Friendly Title

 

function friendlyTitle( $txtTitle = "" ) {
  if ( $txtTitle == "" ) return;

  $txtTitle = strtolower( $txtTitle );
  $txtTitle = preg_replace( '!\s+!', ' ', $txtTitle );
  $txtTitle = str_replace( array( ' ', ' ' ), '-', $txtTitle );
  $txtTitle = str_replace( '&', "-and-", $txtTitle );

  return $txtTitle;
}

 

 

PHP สร้างโฟลเดอร์ ใช้ได้กับระบบ Linux และ Windows

//Create Folder

$pathFolder = "../../../FolderMain"; // จะให้สร้างโฟลเดอร์ไว้ที่ไหน
$folderName = "[ชื่อโฟลเดอร์ที่ต้องการ]";
$folderNameWithPath = "{$pathFolder}/{$folderName}";

// ตรวจสอบว่ามีอยู่หรือเปล่า
if ( !file_exists( $folderNameWithPath ) ) {
  if ( !mkdir( $folderNameWithPath, 0777, true ) ) {
    echo '{"Status":false,"Msg":"Folder not permission for write"}';
    die;
  }
}

 

PHP แสดง IP Address ที่ได้รับจาก ISP

// Function to get the client IP address
function get_client_ip() {
    $ipaddress = '';
    if (isset($_SERVER['HTTP_CLIENT_IP']))
        $ipaddress = $_SERVER['HTTP_CLIENT_IP'];
    else if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
        $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
    else if(isset($_SERVER['HTTP_X_FORWARDED']))
        $ipaddress = $_SERVER['HTTP_X_FORWARDED'];
    else if(isset($_SERVER['HTTP_FORWARDED_FOR']))
        $ipaddress = $_SERVER['HTTP_FORWARDED_FOR'];
    else if(isset($_SERVER['HTTP_FORWARDED']))
        $ipaddress = $_SERVER['HTTP_FORWARDED'];
    else if(isset($_SERVER['REMOTE_ADDR']))
        $ipaddress = $_SERVER['REMOTE_ADDR'];
    else
        $ipaddress = 'UNKNOWN';
    return $ipaddress;
}

 

PHP ลบสระภาษาไทยออกจากอีเมล์ ผู้ใช้พิมพ์ข้อความบนมือถือมักพิมพ์ผิดบ่อย

var $thaiChar = array( 'ี', 'ื', 'ั', '์', 'ิ', '่', '้' );

 

function cleanGarbageChar( $text ) {
if ( $text == "" ) return;
$arrCharTH = $this->thaiChar;

return str_replace( $arrCharTH, '', $text );
}

 

PHP Escape Double and Single เปลี่ยนเครื่องหมายคำพูด Sigle Quote (') และ Double Quote (")  เป็นรหัส HTML

function EscapeDoubleAndSingle( $string ) {

//ก่อนใช้ให้ลบช่องว่างออก
$searchReplaceArray = array(
'"' => '& quot;',
"'" => '& #039;'
);
$string = str_replace(
array_keys( $searchReplaceArray ),
array_values( $searchReplaceArray ),
$string
);

return $string;
}

 

PHP ให้ภาษาไทยรองรับ UTF-8 และ TIS-620

นำรหัสที่ได้ไปวางใน HTML เมื่อนำลิงค์ไปแชร์จะแสดงภาษาไทยได้ทั้ง Facebook และ Twitter

$text = "ภาษาไทย";
echo setThaiISO( $text ); 

 

//ISO-8859-1 (ก่อนใช้โปรดลบช่องว่างออก &_# )
function setThaiISO( $text ) {
  $search  = array('ๅ', 'ภ', 'ถ', 'ุ', 'ึ', 'ค', 'ต', 'จ', 'ข', 'ช', 'ฃ', 'ๆ', 'ไ', 'ำ', 'พ', 'ะ', 'ั', 'ี', 'ร', 'น', 'ย', 'บ', 'ล', 'ฟ', 'ห', 'ก', 'ด', 'เ', '้', '่', 'า', 'ส', 'ว', 'ง', 'ผ', 'ป', 'แ', 'อ', 'ิ', 'ื', 'ท', 'ม', 'ใ', 'ฝ', '๑', '๒', '๓', '๔', '๕', '๖', '๗', '๘', '๙', 'ฅ', '๐', '"', 'ฎ', 'ฑ', 'ธ', 'ํ', '๊', 'ณ', 'ฯ', 'ญ', 'ฐ', 'ฤ', 'ฆ', 'ฏ', 'โ', 'ฌ', '็', '๋', 'ษ', 'ศ', 'ซ', 'ฉ', 'ฮ', 'ฺ', '์', 'ฒ', 'ฬ', 'ฦ'); 
   $replace = array('& #3653;', '& #3616;', '& #3606;', '& #3640;', '& #3638;', '& #3588;', '& #3605;', '& #3592;', '& #3586;', '& #3594;', '& #3587;', '& #3654;', '& #3652;', '& #3635;', '& #3614;', '& #3632;', '& #3633;', '& #3637;', '& #3619;', '& #3609;', '& #3618;', '& #3610;', '& #3621;', '& #3615;', '& #3627;', '& #3585;', '& #3604;', '& #3648;', '& #3657;', '& #3656;', '& #3634;', '& #3626;', '& #3623;', '& #3591;', '& #3612;', '& #3611;', '& #3649;', '& #3629;', '& #3636;', '& #3639;', '& #3607;', '& #3617;', '& #3651;', '& #3613;', '& #3665;', '& #3666;', '& #3667;', '& #3668;', '& #3647;', '& #3669;', '& #3670;', '& #3671;', '& #3672;', '& #3673;', '& #3589;', '& #3664;', '& #3598;', '& #3601;', '& #3608;', '& #3661;', '& #3658;', '& #3603;', '& #3631;', '& #3597;', '& #3600;', '& #3620;', '& #3590;', '& #3599;', '& #3650;', '& #3596;', '& #3655;', '& #3659;', '& #3625;', '& #3624;', '& #3595;', '& #3593;', '& #3630;', '& #3642;', '& #3660;', '& #3602;', '& #3628;', '& #3622;'); 
 
return str_replace($search, $replace, $text);
}

 

PHP หาค่าระหว่าง 2 วัน ห่างกันกี่วัน

วิธีใช้: 

$curDate = date( "Y-m-d" );

echo dateDifference( "2020-10-29", $curDate ); // จะได้ 1 วัน

 

function dateDifference($date_1 , $date_2 , $differenceFormat = '%a' )
{
$datetime1 = date_create($date_1);
$datetime2 = date_create($date_2);
$interval = date_diff($datetime1, $datetime2);

return $interval->format($differenceFormat);

 

PHP SQL Escape Single Qoute (') ป้องกัน SQL Injection 

แนะนำให้ใช้ก่อนเพิ่มหรือ Query ข้อมูลฐานข้อมูล SQL Server

function mssql_escape($str)
{
return str_replace("'", "''", $str);
}

 

PHP สุ่ม Array แบบกำหนด Key พร้อม Value

วิธีใช้:

$colors = array("color1" => "Red", "color2" => "Green", "color3" => "Yellow");

print_r(shuffle_assoc($colors));

function shuffle_assoc($my_array)
{
    $keys = array_keys($my_array);
    shuffle($keys);

    foreach ($keys as $key) {
        $new[$key] = $my_array[$key];
    }

    $my_array = $new;
    return $my_array;
}

PHP การสร้างชื่อไฟล์แบบไม่ซ้ำ มีประโยชน์ตอนตั้งชื่อเพื่อบันทึกรูปภาพครั้งละมาก ๆ

$numUID = uniqid(); // Gen 13 ตัวอักษรแบบไม่ซ้ำ เช่น 5fb9aa38e935b
$numUID = getUID6Digit( $numUID ); // ลดให้เหลือ 6 ตัวอักษร

 

//ชื่อไฟล์ที่ได้จะไม่มีทางซ้ำกัน
$fileName = "{$today}_{$numUID}";

 

function getUID6Digit( $numUID="" ) {
if( $numUID=="" )return;
return substr( $numUID, -6 );
}

 

วิธี PHP แปลงค่า Array จากตัวอักษรเป็นตัวเลข ( String เป็น Integer )

$arr = array("1", "2");

$arrData = array_map('intval', $arr);

 

OUTPUT:  1, 2

 

วิธีแปลงตัวอักษรภาษาจีนเป็น Unicode (Convert Chaina to Unicode)

$arr = array(
'详细内容'
);

 

วนลูปตามสมาชิก Array

foreach($arr as $val) {
$uText = json_encode($val);
echo str_replace('"', '', $uText)."\n";
}

 

แปลง Unicode กลับมาเป็นตัวอักษรภาษาจีนเหมือนเดิม

$unicodeChar = '\u516c\u5bd3';
echo json_decode('"'.$unicodeChar.'"');

 

PHP จำกัดข้อความ 80 ตัวอักษร สำหรับ Google SEO (ส่วนใหญ่จะใส่ Page Title)

วิธีใช้: 

แบบแรก: กำหนดจำนวนตัวอักษรได้

1. strTrim([ข้อความ], [จำนวนตัวอักษรที่ต้องการ: 88] );

 

แบบสอง: หากไม่ระบบจำนวนตัวอักษร ฟังค์ชั่นจะตัดเหลือ 55 ตัวอักษร (ตามค่า default ที่กำหนด)

2. strTrim([ข้อความ]);

 

function strTrim( $text="", $limit="" ) { //กำหนดเองได้
if( trim($text) == "" )return;

$chrLimit = ( intval($limit) )? $limit : 55 ;
$text = trim( $text );

if( mb_strlen( $text, 'UTF-8' ) > $chrLimit ) {
$text = mb_substr( $text, 0, $chrLimit, 'UTF-8' );
}

return $text;
}

ดาวโหลด Content จาก URL

function curl_download($Url){	 
    // is cURL installed yet?
    if (!function_exists('curl_init')){
        die('Sorry cURL is not installed!');
    }
 
    // OK cool - then let's create a new cURL resource handle
    $ch = curl_init();
 
    // Now set some options (most are optional) 
    // Set URL to download
    curl_setopt($ch, CURLOPT_URL, $Url);
 
    // Set a referer
    // curl_setopt($ch, CURLOPT_REFERER, "http://www.example.org/yay.htm");
 
    // User agent
    curl_setopt($ch, CURLOPT_USERAGENT, "MozillaXYZ/1.0");
 
    // Include header in result? (0 = yes, 1 = no)
    curl_setopt($ch, CURLOPT_HEADER, 0);
 
    // Should cURL return or print out the data? (true = return, false = print)
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 
    // Timeout in seconds
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
 
    // Download the given URL, and return output
    $output = curl_exec($ch);
 
    // Close the cURL resource, and free system resources
    curl_close($ch);
 
    return $output;
}	

 

 

PHP ดาวโหลด PDF จาก URL 

// Initialize a file URL to the variable
$urlInput = 'http://www.guimee.com/example.pdf';

$newFilename = basename($urlInput);
$folName = "pdf";
$fileOutput = "{$folName}//{$newFilename}";
$ch = curl_init($urlInput);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_REFERER, $urlInput);
$data = curl_exec($ch);
curl_close($ch);
$result = file_put_contents($fileOutput, $data);

if ($result) {
    echo json_encode([
        "Status" => true
        , "Msg" => "Success",
    ]);die;
} else {
    echo json_encode([
        "Status" => false
        , "Msg" => "Permission is deny",
    ]);die;
}

 

PHP ตรวจลิงค์รูปภาพยังมีอยู่หรือไม่ หากรูปยังมีอยู่จะคืนค่าพาร์ทรูป หรือหากรูปถูกลบแล้วจะคืนค่าว่าง

//return space, if not existed
function checkHeader404( $urlImage="" ) {
if($urlImage=="")return;
// to be checked
$url = trim($urlImage);
// Getting page header data
$array = @get_headers($url);
// that is only what we need to check
$string = $array[0];
// 404 for error, 200 for no error
return (strpos($string, "200"))? $urlImage : "";
}//func

$urlImage = "https://www.guimme.com/images/2020232220.jpg";

echo checkHeader404($urlImage);

 

PHP เทียบระยะห่างของเวลาจากเริ่มต้นจนสิ้นสุดเป็นกี่นาที

function getNumMinut() {
    $to_time = strtotime("2008-12-13 10:20:00");
    $from_time = strtotime("2008-12-13 10:21:00");
    return round(abs($to_time - $from_time) / 60, 2); //. " minute"
}

 

เพิ่มข้อมูลจากไฟล์นอก

include("[filename_inc.php]");

 

ให้ Browser แสดงข้อมูล Json 

header("Content-Type: application/json; charset=UTF-8");

 

กระโดดไปหน้าที่ต้องการ (จำเป็นต้องมี die ต่อท้ายด้วย)

header( 'Location: http://www.yoursite.com/new_page.php' );die;

 

== กลุ่มของฟังค์ชั่น ==

แสดงชื่อโดเมน รับข้อมูลจาก URL

วิธีใช้: 

$URL = "https://www.guimee.com/adblog/523/รวมคำสั่ง-php-ที่ใช้บ่อย/";

echo  getHostnameOnly( $URL ); //จะได้ guimee

 

function getHostnameOnly($url) {
    $url = trim($url);
    if ($url == "") {
        return;
    }
    $parse = parse_url($url);
    $strHost = $parse['host'];
    if ($strHost == "") {
        return;
    }
    $strHost = str_replace('www.', '', $strHost);
    if (preg_match('/\./', $strHost)) {
        $arrHost = explode('.', $strHost, 2);
        $strHost = $arrHost[0];
    }
    return $strHost;
}

 

PHP แสดงวันที่จากฐานข้อมูล SQL Server (วันที่จะเป็นชนิด Object Time)

วิธีแรกใช้ DateTime Format ของ PHP

// ดึงวันที่จากฐานข้อมูล
$db_DateUpdate = $objStatsLinkShare->DateUpdate;

//ฟอร์แมตรูปแบบวันที่ ที่ต้องการแสดง เช่น d-m-Y (วัน เดือน ปี) หรื
$strDateUpdate = $db_DateUpdate->format('d-m-Y H:i');

 

วิธีที่สองใช้ฟังค์ชั่นช่วยแปลง

function date_normalizer($d, $isMin=false){
  if ( empty( $d ) ) return;
    if($d instanceof DateTime){
        $objDateTime = $d->getTimestamp();
    } else {
        $objDateTime = strtotime($d);
    }
return ($isMin)?date('Y-m-d', $objDateTime):date('Y-m-d H:i:s', $objDateTime);
}
การแปลงเวลาจาก time object เป็น string
function time_normalizer( $d, $isMini = false ) {
  if ( empty( $d ) ) return;
  if ( $d instanceof DateTime ) {
    $objDateTime = $d->getTimestamp();
  } else {
    $objDateTime = strtotime( $d );
  }

  return ( !$isMini ) ? date( 'H:i:s', $objDateTime ) : date( 'H:i', $objDateTime );
}

 รวมคำสั่ง PHP ที่ใช้บ่อย

Captcha Challenge
ลองรูปภาพใหม่
Type in the verification code above