實現國際化的方式比較多,很多php framework都內建i18n支援,但大部分是基於PHP的數組實現的,這種方法並不推薦。目前最為流行也最通用的方法是gettext。Gettext 用於系統的國際化(I18N)和本地化(L10N),可以在編譯器的時候使用本國語言支援(Native Language Support(NLS)),其可以使程式的輸出使用使用者佈建的語言而不是英文. 關於gettext的更多資料請參見: 下面說說如何利用gettext在你的PHP程式中實現國際化。一、檢查環境需求
作為一種常用的設計模式,單例模式被廣泛的使用。那麼如何設計一個單例才是最好的呢?通常我們會這麼寫,網上能搜到的例子也大部分是這樣:複製代碼 代碼如下:class A{ protected static $_instance = null; protected function __construct() {
最近項目中要為一個rest服務寫用戶端,其中的簽名校正需要在HTTP Header中產生一個RFC 1123格式的Date。這個問題比較好解決,簡單翻閱了PHP文檔,使用gmstrftime這個函數就能解決。複製代碼 代碼如下:string gmstrftime ( string $format [, int $timestamp = time() ] )調用的代碼如下:複製代碼 代碼如下:echo gmstrftime("%a, %d %b %Y %T
需求:對一個設定檔進行處理,拿出可用的字元來拼接,下面是原始文本,我們要得到這樣的結果,複製代碼 代碼如下:redis -h 127.0.0.1 -p 6379 | select 2redis -h 127.0.0.1 -p 6379 | select 16redis -h 127.0.0.1 -p 6379 | select 8原始文本:複製代碼 代碼如下: 'redis_list' => array( &
sys_getloadavg() 這個函數返回當前系統的負載均值資訊(當然 Windows 下不適用),詳細文檔可以翻閱 PHP 的相關文檔。文檔中有段範例程式碼,基本上也就能看出它的用途了。 複製代碼 代碼如下: <?php $load = sys_getloadavg(); if ($load[0] > 80) { header('HTTP/1.1 503 Too busy, try again later'); die('Server too busy. Please try
一般人們使用WordPress的Cron API來實現定時任務,它的原理就是將建立的定時任務儲存到資料庫裡,當有人訪問的時候就去判斷一下是否到時間需要執行這個定時任務,如果到時間則執行。因為這種原理,所以執行的時間可能會有一些偏差,但隨著網站的瀏覽量攀升和網路爬蟲的不斷訪問,會讓定時任務執行的時間越來越準確。想在 WordPress 裡建立一個定時任務一般用兩個函數就行,其中之一是wp_schedule_event()wp_schedule_event( $timestamp,
看了很久資料結構但是沒有怎麼用過,在網上看到了關於PHP的資料結構,學習了一下,與大家一起分享一下。上一次分享了《PHP小教程之實現鏈表》,這次來補充說一下雙向鏈表。複製代碼 代碼如下:<?php class Hero
一般來說,GDB主要完成下面四個方面的功能: (1)啟動你的程式,可以按照你的自訂的要求隨心所欲的運行程式。 (2)可讓被調試的程式在你所指定的調置的斷點處停住。(斷點可以是條件運算式) (3)當程式被停住時,可以檢查此時你的程式中所發生的事。 (4)動態改變你程式的執行環境。1、簡介GDB是GNU開源組織發布的一個強大的UNIX下的程式調試工具。如果你是在
我們知道資料庫處理sql是一條條處理的,假設購買商品的流程是這樣的:sql1:查詢商品庫存if(庫存數量 > 0){ //產生訂單...
物件導向 對象概念是物件導向技術的核心。在顯示世界裡我們所面對的事情都是對象,如電腦、電視機、單車等。在物件導向的程式設計中,對象是一個由資訊及對資訊進行處理的描述所組成的整體,是對現實世界的抽象.對象的主要三個特性對象的行為:可以對
首先給大家看一看這個表格:根據微信進階紅包介面,開發PHP版本的API介面,現在進行主要程式碼分析。紅包介面調用請求代碼,所有請求參數為必填參數與文檔對應:class Wxapi { private $app_id = 'wxXXXXXXXXXXXX'; //公眾帳號appid,首先申請與之配套的公眾帳號 private $app_secret = 'XXXXXXXXXXXXXXXXXXXXXXXX';//公眾號secret,使用者擷取使用者授權token private $app_mchid
本文執行個體講述了php實現的微信紅包演算法。分享給大家供大家參考。具體如下:具體代碼:<?php/** * 微信紅包的類 * */CLASS WXHongBao { private $mch_id = "111111";//商戶ID寫死 private $wxappid = "22222222";//微信公眾號,寫死 private $client_ip = "119.29.80.114"; //調用紅包介面的主機的IP,服務端IP,寫死,即指令檔所在的IP
Yii中的資源是和Web頁面相關的檔案,可為CSS檔案,JavaScript檔案,圖片或視頻等,資源放在Web可訪問的目錄下,直接被Web伺服器調用。有時候有些功能需要做到計劃任務中去,因此就需要yii能用php命令去執行。yii2.0是支援php命令列啟動並執行,操作方法如下:在yii根目錄下面有個“yii”檔案(不是“yii.bat”),這個檔案就是入口。然後“commands”目錄下會預設有個“HelloController.php”控制器檔案,這個是一個demo。開啟這個控制器檔案,源碼
到目前為止,你已經瞭解了足夠多的PHP了。該寫個小程式練手了。使用者註冊系統寫一個index.php頁面,有使用者名稱和密碼錶單,post提交到check.php,輸出使用者名稱和"使用者名稱+密碼"的md5值本地建立一個mysql資料庫,名叫segmentfault,建立一個表user,欄位username password將上題check.php接收到的內容存入我們先完成HTML部分:<!DOCTYPE
php實現數字格式化,數字每三位加逗號的功能函數,具體代碼如下:function num_format($num){ if(!is_numeric($num)){ return false; } $num = explode('.',$num);//把整數和小數分開 $rl = $num[1];//小數部分的值 $j = strlen($num[0]) % 3;//整數有多少位 $sl = substr($num[0], 0, $j);//前面不滿三位的數取出來 $sr =
這篇文章將使用jQuery,並結合PHP,將Fckeditor發布的內容進行分頁,並且實現無重新整理切換頁面。 本文假設你是WEB開發人員,掌握了jQuery和PHP相關知識,並且熟知Fckeditor的配置和使用。Fckeditor編輯器有一個插入分頁符的功能按鈕,點擊該按鈕,將會在內容區插入一條分頁符,如下圖紅色框標註:分頁符對應產生的html代碼是:<div style="page-break-after: always"><span
需求是這樣的,需要登入帶驗證碼的網站,擷取資料,但是不可能人為一直去記錄資料,想通過自動採集的方式進行,如下是實驗出來的結果代碼!有需要的可以參考下!<?phpnamespace Home\Controller;use Think\Controller;class LoginController extends Controller{ protected $cookieName = array('cookie_verify', 'cookie_verify');
PHP資訊函數包含的一些函數概念總結如下。PHP資訊函數之getenv適用版本:PHP3, PHP4函數功能:取得環境變數數值。函數文法:string getenv (string varname)函數說明:這個函數能夠返回 PHP 的環境變數數值, 可以利用這個函數取得相關資料。範常式序:< ?PHP $ip=getenv ("REMOTE_ADDR"); echo "用戶端的 IP 是:".$IP; ?>執行結果:此結果因使用者不同而不同。PHP資訊函數之get_
現實中我們經常看到這樣的說明,排名不分先後,按姓名首字母進行排序。這是中國人大多數使用的排序方法。那麼在php程式中該如何操作呢?下面就分享一下在php程式中擷取漢字拼音的首字母的方法,在網上搜到的大多數是有問題的,這個可是經過小編實踐應用過的,真的可以使用的哦。//php擷取中文字元拼音首字母 function getFirstCharter($str){ if(empty($str)){return '';} $fchar=ord($str{0});
本文執行個體講述了php擷取遠程檔案大小的方法,分享給大家供大家參考。具體實現方法如下:/* **功能:擷取遠程檔案的大小,傳回值的單位是:位元組 */ function get_fileSize($url){ if(!isset($url)||trim($url)==''){ return ''; } ob_start(); $ch=curl_init($url); curl_setopt($ch,CURLOPT_HEADER,1); curl_setopt($