Time of Update: 2017-12-23
相信很多PHPer都有接觸過模板,模板以其特定的解析文法是如何?的呢?本文通過自己寫一個簡單的模板解析類,來讓大家清楚地認識模板的原理。mini類class mini { public $template_dir = ''; // 模板檔案存放的位置 public $compile_dir = ''; // 模板檔案編譯後存放的位置 public $array = array (); public function assign($key,
Time of Update: 2017-12-20
這次給大家帶來一個小案列,用PHP來實現漢諾塔問題。漢諾塔(又稱河內塔)問題是源於印度一個古老傳說的益智玩具。大梵天創造世界的時候做了三根金剛石砫子,在一根柱子上從下往上按照大小順序摞著64片黃金圓盤。大梵天命令婆羅門把圓盤從下面開始按大小順序重新擺放在另一根柱子上。並且規定,在小圓盤上不能放大圓盤,在三根柱子之間一次只能移動一個圓盤。簡而言之,有三根相鄰的柱子,標號為A,B,C,A柱子上從下到上按金字塔狀疊放著n個不同大小的圓盤,要把所有盤子一個一個移動到柱子B上,並且每次移動同一根柱子上都不
Time of Update: 2017-12-23
緩衝,很多網站都會使用,尤其是應對高並發的情況下,緩衝必不可少。本篇文章基於phalapi來講解緩衝Redis在實際中的使用,希望對大家有所協助。前言當我們在開發一個項目時,我們可能會遇到很多問題,比如訊息推送,發送郵件,傳送簡訊,以及並發跟不上,這個時候就該輪到常用的緩衝出手解救我們了,我們接下來來講講緩衝Redis在實際中的使用,解決實際問題.在這裡是基於redis的基本知識,和簡單看一下PhalApi的redis拓展文檔在前來閱讀此小節.1.
Time of Update: 2017-12-20
我們知道,在命名空間一個最明確的目的就是解決重名問題,所以在PHP裡是不允許兩個函數或者類出現相同的名字,否則會產生一個致命的錯誤。這種情況下只要避免命名重複就可以解決,最常見的一種做法是約定一個首碼。使用namespace的目的:團隊合作項目時,避免與團隊其它成員建立的類發生衝突;個人負責項目時,避免前後建立的類發生衝突;據個人理解,用到所需要的類時,需要先require或include引入,所以會發生類重定義的錯誤的前提是:兩個相同命名的類都有被引入。目前有些php架構會自動載入(即incl
Time of Update: 2017-12-23
在編程中,總會需要處理一些資料,比如給定2個數組取出它們的差集。雖然實現的方法有很多,但是哪種方法用來求差集的效能更好呢?今天我們就分享一個求差集的執行個體,以及如何去最佳化我們的代碼效能。題目如下: 給你兩個分別有 5000 個元素的數組,計算他們的差集 -- 說白了也就是用 PHP 和你認為最好的演算法實現 array_diff 的演算法。初次接到這個題目,我發現這非常的簡單,於是按照以往的經驗“隨便”寫了一個: function array_diff($array_1, $array_2)
Time of Update: 2017-12-20
今天給大家帶來在PHP裡的header的用法總結,總共5種用法,下面給大家一一詳解,我們一起來看一下。1、header()函數的作用是:發送一個原始 HTTP 標題[Http Header]到用戶端。header(string,replace,http_response_code)/*string:必需。規定要發送的前序字串。 replace:可選。指示該前序是否替換之前的前序,或添加第二個前序。 預設是 true(替換)。false(允許相同類型的多個前序)。
Time of Update: 2017-12-23
Yii2架構以其效能著稱,也是有不少的使用者。有的時候我們的項目可能需要多語言支援,那麼如何配置Yii2的語言套件呢?我們今天就來設定一下Yii2的語言套件。yii2的多語言個yii1幾乎類似1.設定預設語言:在mail.php設定檔加上:'language'=>'zh-CN'2.多語言切換 <a href="<?php echo
Time of Update: 2017-12-20
我們知道,在用thinkPHP架構做項目的時候,經常會遇到對列表的內容進行分頁,因為thinkPHP架構中內建了分頁功能,但是有一個缺陷,每次返回資料給頁面的時候都需要重新載入頁面所需要的JS和CSS等資源,很增加流量的壓力,今天就教大家怎樣不重複載入頁面也可以實現返回列表分頁的功能。二、分頁流程流程說明: 1) 調研App.php中的函數,該函數調用fetch函數。fetch函數渲染list.html. 2) list.html
Time of Update: 2017-12-20
在很多情況下我們會需要批量的上傳表格到資料庫,那麼今天就來教大家如何用PHP實現批量上傳表格。首先要下載PHPExcel放到vendor檔案夾下,我的路徑是:項目/vendor/PHPExcel/,把下載的PHPExcel檔案放在這裡前端代碼<!DOCTYPE html><html><head> <title>大量匯入資料</title></head><body><form action="{:
Time of Update: 2017-12-20
我們知道Laravel 5.5是很重要的一個版本,在Laravel 5.5 的路由中增加了一種新的傳回型別:可相應介面( Responsable )。今天就給大家帶來一個案例來詳細介紹一下。看樣本:use Illuminate\Contracts\Support\Responsable; class ExampleObject implements Responsable{ public function construct($name = null) { $this->name = $
Time of Update: 2017-12-20
相信用PHP操作ZIP壓縮包檔案的基本方法大家都是知道怎麼做的,那麼在一些特殊情況下我們需要不解壓也能看到壓縮包內的檔案,這需要怎樣操作呢?今天就給大家帶來這樣一種方法,我們一起來看一下。$zip_path = '12.zip';//壓縮包實際路徑$zip = zip_open($zip_path);//利用zip_open函數開啟壓縮包while ($re = zip_read($zip)) {//讀依次讀取包中的檔案 if (!zip_entry_filesize($re))
Time of Update: 2017-12-20
最近在做workerman的時候很頻繁的接觸到回呼函數。今天給大家整理一下PHP必包擷取外部變數和global關鍵字聲明變數的區別。閉包閉包是一個常見的概念,我們通常可以將其與回呼函數配合使用,可以使代碼更加簡潔易讀。閉包可以 通過拷貝的方式 讓函數使用父範圍中的變數。如:$global = 'hello';$bbb = function()use($global){ echo $global."\n";};$bbb();//輸出 'hello
Time of Update: 2017-12-20
我們知道,感知器是最簡單的神經網路,只有一層。感知器是類比生物神經元行為的機器。那麼這次給大家帶來的教學就是如何用python來實現感知器,模型如下。給定一個n維的輸入 ,其中w和b是參數,w為權重,每一個輸入對應一個權值,b為偏置項,需要從資料中訓練得到。啟用函數
Time of Update: 2017-12-22
實際應用中有時候會遇到二維數組特定排序的需求,這個時候該如何處理呢?來看看文章的執行個體吧!$arr=[ array( 'name'=>'小壞龍', 'age'=>28 ), array( 'name'=>'小壞龍2', 'age'=>14 ), array(
Time of Update: 2017-12-20
本文主要介紹了PHP實現的折半尋找演算法,簡單描述了折半尋找的原理,並結合執行個體形式分析了php採用遞迴與非遞迴方式實現折半尋找演算法的相關操作技巧,需要的朋友可以參考下,希望能協助到大家。定義:折半尋找技術,也就是二分尋找。它的前提是線性表中的記錄必須是關鍵碼有序(通常從大到小有序),線性表必須採用順序儲存。折半尋找的基本思想:取中間記錄作為比較對象,若給定值與中間記錄的關鍵字,則在中間記錄的關鍵字相等,則尋找成功;若給定值小於中間記錄的作伴去繼續尋找;若給定值大於中間記錄的關鍵字,則在中間
Time of Update: 2017-12-16
這篇文章主要介紹了PHP進行中時-變數詳解及字串動態插入變數的方法,非常不錯,具有參考借鑒價值,提供了PHP源碼,對PHP感興趣的朋友可以參考下在PHP中,變數是$+變數名,變數名遵循標識符的命名規則,可以以字母、底線開頭,可以由數字、底線、字母組成合法的變數名。變數聲明所有變數在使用之前應該進行聲明,而且最好帶上注釋,雖然在PHP中可以不顯示聲明變數。聲明變數之後,可以為變數進行賦值;變數的賦值有兩種類型值賦值和引用賦值。<?php #合法的聲明變數 $_name;
Time of Update: 2017-12-21
這篇文章主要介紹了PHP基於反射機制實現自動依賴注入的方法,結合執行個體形式分析了php使用反射實現自動依賴注入的步驟、原理與相關操作技巧,需要的朋友可以參考下依賴注入又叫控制反轉,使用過架構的人應該都不陌生。很多人一看名字就覺得是非常高大上的東西,就對它望而卻步,今天抽空研究了下,解開他它的神秘面紗。廢話不多說,直接上代碼; /**** 工具類,使用該類來實現自動依賴注入。**/class Ioc { // 獲得類的對象執行個體 public static function
Time of Update: 2017-12-21
OSSObject Storage Service是安全,低成本,高可靠的雲端儲存體服務,本文以圖片上傳結合七牛雲端儲存為執行個體,來實現OSS儲存功能。php七牛雲安裝 使用composer安裝#安裝 Composer curl -sS https://getcomposer.org/installer | php#使用 Composer 擷取最新版本的 Qiniu SDK php composer.phar require qiniu/php-sdk#代碼中 require
Time of Update: 2017-12-21
TP5提供了強大的Model功能,跟隨這篇文章來一探究竟。簡介tp5的model只做業務層操作,不做具體的連結資料庫sql操作。think\db\Connection.php做連結資料庫操作think\db\Builder.php做建立sql操作think\db\Query.php做資料CURD操作功能清單資料自動完成自動寫入時間戳記時間欄位自動格式化輸出欄位欄位驗證器自動關聯寫入唯讀欄位隱藏欄位事件回調虛刪除類型轉換功能詳情1. 資料自動完成
Time of Update: 2017-12-21
ECSHOP在較高的PHP版本中運行可能會有一些相容問題報錯,讓我們來看看如何去解決吧!第一種 Strict Standards: Non-static method cls_image::gd_version() should not be called statically in F:\xampp\htdocs\ceshi\includes\lib_base.php on line 346 解決辦法: 按照檔案路徑,找到 return cls_image::