2021年8月25日 星期三

(PHP) preg_replace_callback() 函數

preg_replace_callback 函數: 執行一個正則表達式. 搜索. 並且使用一個回調進行替換。

語法
mixed preg_replace_callback ( mixed $pattern , callable $callback , mixed $subject [, int $limit = -1 [, int &$count ]] )
 
這個函數的行為除了可以指定一個 callback. 替代 replacement 進行替換字符串的計算,其他方面相同於 preg_replace()
 
參數說明
    $pattern: 要搜索的模式,可以是字符串. 或一個字符串數組。
    $callback: 一個回調函數; 調用時函數得到的參數是從 subject中匹配到的結果。
    $subject: 要搜索替換的目標字符串或字符串數組。
    $limit: 可選,對於每個模式用於每個 subject 字符串的最大可替換次數。默認是-1(無限制)。
    $count: 可選,為替換執行的次數。
 
返回值
如果 subject是一個數組, preg_replace_callback()返回一個數組;
其他情況返回字符串。
錯誤發生時返回 NULL。
 
如果找到了匹配,返回替換後的目標字符串(或字符串數組);
其他情況subject 將會無變化返回。

實例

<?php
// 將文本中的年份增加一年.
$text = "April fools day is 04/01/2002\n";
$text.= "Last christmas was 12/24/2001\n";
// 回調函數
function next_year($matches)
{
  // 通常: $matches[0]是完成的匹配
  // $matches[1]是第一個捕獲子組的匹配
  // 以此類推
  return $matches[1].($matches[2]+1);
}
echo preg_replace_callback( "|(\d{2}/\d{2}/)(\d{4})|", "next_year", $text); 
?>
執行結果如下所示:
April fools day is 04/01/2003
Last christmas was 12/24/2002

2021年8月18日 星期三

(PHP語法) $_SERVER 的詳細用法

 
$_SERVER['PHP_SELF'] #當前正在執行腳本的文件名,與 document root相關。
$_SERVER['argv'] #傳遞給該腳本的參數。
$_SERVER['argc'] #包含傳遞給程序的命令行參數的個數(如果運行在命令行模式)。
$_SERVER['GATEWAY_INTERFACE'] #服務器使用的 CGI 規範的版本。例如,「CGI/1.1」。
$_SERVER['SERVER_NAME'] #當前運行腳本所在服務器主機的名稱。
$_SERVER['SERVER_SOFTWARE'] #服務器標識的字串,在響應請求時的頭部中給出。
$_SERVER['SERVER_PROTOCOL'] #請求頁面時通信協議的名稱和版本。例如,「HTTP/1.0」。

2021年8月7日 星期六

(不想探究) 還是自架的主機好用!!

今天持續摸索. 架設自己的 Google 協作平台網站時. 因為想連結雲端檔案. 造出 [即時消息] 效果時發現:
 
原來. Google 的雲端硬碟已於 7月下旬更新了安全機制!?...  更扯的是: 居然和 Mega一樣. 需要所規定的新版瀏覽器. 才能進入雲端硬碟的服務...
 
又是資訊業者強迫用戶昇級硬體. 搞有錢人的玩意兒!! 我用的 XP系統豈不直接斷頭!?... 真是 操妳媽的!!!~
 
還好. 打從年輕時的電腦使用經驗: 我一向不很相信軟體需要不斷更新! 我堅信: 針對個人需要. 夠用就好!! 雲端的運用. 我採的一向原則. 就是能幫自己主機省點電費. 避免 24小時都開著而已...; 因此. 絕大部份資料. 都有在自家 RH9主機. 及相關的應用套件上做備份!!...
 
因此. 面對這種打擊, 除了繼續堅守自己原則: " 不要太信賴網路! 否則. 一輩子被牽著鼻子走!!~ ", 雲端硬碟資料在沿用自己對新軟件使用規劃下. 已連結應用的. 能救多少就算多少, 掌握. 並守住自家主機的資料才是王道!!
 
 

2021年8月3日 星期二

(不想探究) 不學 Html 5了!!...

雖然退休後有的是時間. 也是為讓自己多動動腦, 這一年半多來. 陸續學起網站架設的相關專業語言和網頁的製做...; 但是. 不管是學習能力已退步. 或者學習方法不正確, 一年半來. 可說完成的. 就僅做了一個小小主站的靜態網頁. 以及稍較熟悉了 DW 的使用操作...; 距離自己想要的成果實在還是有相當大的不足...
-
自己一向信奉功利主義; 學了. 卻派不上用場的東西, 我寧可不學!! 不需浪費自己有限的生命!... Html5 便是一例!!~
-
Html5 雖說有被 Goolge 優先蒐尋的利基, 但說真的. 我還真不喜歡 H5 的網頁...真, 但為了能應用於商務需求. 不得不還是得有 H5網站的設置...
>> 網頁開啟的速度慢
>> 網頁格式限制太多! 多媒體的呈現方式並不是人人都喜歡. 也非每種類型網站都合適採用的!!
-
碰巧. 今天稍試用了好些時日前就註冊的 strikingly免費網站的架設...
 
>> 靠! 這不就是我花不少時間試著學習 Html5 所基本想做的 H5網站效果嗎????
>> 既然人家已幫你建好網站開發介面. 又有免費 500M 的雲端空間, 不用開著自己主機. 一直掛在網上才可. 我幹嘛不直接採用!? 還在那裡一步步學著網頁框架的製作. 調整呢??...
 
這不是浪費生命. 什麼才是浪費生命!?....

(Centos-7s) 更新: 網卡名稱改回 eth0 的方法

將 CentOS 7 網卡名稱修改, 用回 Eth0 的方法:   1) # vi /etc/sysconfig/grub 內容大概是這樣:   GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release...