PHP字串長度找子字串與取代字串的常用函數

PHP在字串的操作上,有非常多的相關函數可以使用,我們在這裡只介紹經常會使用到的字串操作函數。像是如何取得字串的長度、在某一個字裏面尋找子字串首次出現的位置、以及字串的取代函數...等等。這些都是在編寫程式的時候,頻繁被程式設計師使用到的基礎函數。 取得字串長度 <?...

顯示具有 PHP日期 標籤的文章。 顯示所有文章
顯示具有 PHP日期 標籤的文章。 顯示所有文章

2018年2月13日 星期二

PHP自定函數的使用

PHP的自定函數的名稱,可以是英文字數、數字、或底線的字元組合而成,前綴字必須是function為開頭,中間為函數名稱,括孤內為要傳遞的參數,傳遞參數的方式可以分為傳值呼叫(Call by value)或傳址呼叫(Call by reference),一般我們常見到的函數使用都是傳值呼叫的方式。接下來我們就來自定義一下我們的第一支PHP函數:

第一支PHP自定函數 (或傳值呼叫函數)
以下的範例是一個簡單與典型的傳值呼叫方式的自定義函數。在呼叫該函數時會傳入$user這個全域性變數,然而$user這個字串變數值不會因為執行該函數後,產生任何的改變。這個就是傳值呼叫函數的重要特徵。
<?php
// 我的自定函數 (傳值函數)
function my_function($name) {
  echo $name."歡迎光臨!<br/>";
  $user = "大毛";
}

// 呼叫自定函數
$user = "小明";
my_function($user);
echo $user;
?>
輸出畫面:
小明歡迎光臨!
小明


傳址呼叫函數
何謂傳址呼叫函數? 故明思義,就是傳遞參數的記憶體的參考位置給自定函數使用的意思,如果還是以上面的例子來改寫說明如下,請仔細注意my_function函數的$name參數左邊多了一個&字母,表示當再次呼叫該自定函數後,$user這個全域性字串變數值會因為執行而結果產生變化。

<?php
// 我的自定函數 (傳址函數)
function my_function(&$name) {
  echo $name."歡迎光臨!<br/>";
  $name = "大毛";
}

// 呼叫自定函數
$user = "小明";
my_function($user);
echo $user;
?>
輸出畫面:
小明歡迎光臨!
大毛



2018年1月14日 星期日

PHP日期Date的常用函數

在PHP的程式語言裡,早期就是採用Date函數來處理日期的產生、格式化以及字串轉換成日期型態。
  1. 可以利用time()或mktime()獲得當前的時間戳記
  2. 或者使用date()來針對特定日期進行格式化
  3. 若要把字串轉換成為日期就要透過strtotime()函數
以下為簡單的指令操作範例:
<?php
// 取得目前時間的timestamp
$now = time();
$now2 = mktime();

// 對現在的日期進行格式化
echo date("Y-m-d H:i:s", $now);

// 將字串轉換成日期
echo strtotime("2018-01-02");
?>

如果要採行新的作法,也可以考慮改用DateTime日期類別,PHP 5.2.x版本以後開始支援。