Time of Update: 2016-07-29
一、首先實現SessionHandlerInterface(此介面PHP>5.4.0),如下/** * 以db的方式儲存Session */namespace OC\Session;class redisSession implements \SessionHandlerInterface{/** * 儲存Session的資料庫表的資訊 */private $_options = array('handler' => null, //資料庫連接控制代碼'host' =>
Time of Update: 2016-07-29
1.控制器調用視圖模板還有模型如下所示: APP_DEBUG = true; 偵錯模式錯誤資訊顯示更詳細2. 控制器和模板的關係通常:在view目錄通常會有一個與控制器標誌一樣的目錄,裡邊有具體模板檔案例如GoodsController.class.php 控制 在view目錄有Goods目錄,裡邊都是Goods控制器對應的模板檔案
Time of Update: 2016-07-29
以下將涵蓋php面向對象的主要知識點:建立classname.php$name; } public function __set($name,$value){ if(($name="attribute") && ($value>=0) && ($valueattribute=$value; } }}//存取修飾詞:private、protected、public;class A{ public $attribute="default
Time of Update: 2016-07-29
“Runtime Settings”:這裡展示的是正在啟動並執行apc的配置資訊,我們可以根據需求來調整apc參數,參數的設定在php.ini中進行。 apc參數比較多,下面就幾個比較常用的參數做下說明: 1 apc.cache_by_default和apc.filters:apc.cache_by_default,是否開啟系統緩衝,通常跟apc.filters結合使用,用來控制需要進行緩衝和不需要緩衝的php檔案。apc.filters參數的值是一個以逗號分隔的
Time of Update: 2016-07-29
面向對象特殊實踐(只有在PHP裡面才有,其他語言面向對象沒有)面向對象--魔術方法__construct(), __destruct() 建構函式和解構函式__tostring()__invoke()__call(), __callStatic()__get(), __set(), __isset(), __unset()__clone()__tostring()當對象被當作String使用時,這個方法會被自動調用。Echo
Time of Update: 2016-07-29
現在django的應用基本都是使用uwsgi來部署,類似下面 listen queue of socket "127.0.0.1:9001" (fd: 3) 的錯誤出現過2次,下面說下這兩次錯誤出現的解決的過程。出錯情境centos 6.6uwsgi2.0nginx1.6錯誤記錄檔截取TueJun217:33:272015 - *** uWSGIlistenqueueofsocket"127.0.0.1:9001" (fd: 3) full!!! (101/100) ***TueJun217:3
Time of Update: 2016-07-29
以二維數組為例,來說明針對任意鍵值的去重,時間複雜度為~O(n),只用一個foreach迴圈:array( 'name'=>'james', 'age'=>30, ), '1'=>array(
Time of Update: 2016-07-29
不會面向對象的程式員不是好的程式員我熟悉面向對象!!!!面向對象的基本概念PHP中的面向對象實踐面向對象的基本概念什麼是對象對象的基本組成對象的特點什麼是面向對象為什麼使用面向對象面向對象的基本思路面向對象的基本原則什麼是面向對象面向對象(Object Oriented)? 對象(Object)? 面向(Oriented)什麼是對象世間萬物皆對象- 一個人,一輛車,一架飛機,一個桌子- 一切可見之物都是對象- 一切不可見對象(抽象事物)也可以是對象
Time of Update: 2016-07-29
require_once './library/excel/PHPExcel.php'; //要讀的檔案 $filePath = 'test.xlsx'; $PHPExcel = new PHPExcel(); /**預設用excel2007讀取excel,若格式不對,則用之前的版本進行讀取*/ $PHPReader = new PHPExcel_Reader_Excel2007();
Time of Update: 2016-07-29
如果使用者輸入的是直接插入到一個SQL語句中的查詢,應用程式會很容易受到SQL注入,例如下面的例子:$unsafe_variable = $_POST['user_input'];mysql_query("INSERT INTO table (column) VALUES ('" . $unsafe_variable . "')");這是因為使用者可以輸入類似VALUE”); DROP TABLE表; - ,使查詢變成:INSERTINTOtable (column)
Time of Update: 2016-07-29
(1)mysql_real_escape_string – 轉義 SQL 陳述式中使用的字串中的特殊字元,並考慮到串連的當前字元集 使用方法如下:$sql = "selectcount(*) as ctr from users where username ='".mysql_real_escape_string($username)."'and password='". mysql_real_escape_string($pw)."' limit 1";使用
Time of Update: 2016-07-29
PHP擷取類中常量,屬性,及方法列表的方法 $r = new ReflectionClass($this); Zend_Debug::dump($r->getConstants(), "Constants"); Zend_Debug::dump($r->getProperties(), "Properties"); Zend_Debug::dump($r->getMethods(),
Time of Update: 2016-07-29
提到了CI架構的基本流程,這裡再次貼出流程圖,以備參考: 作為CI架構的入口檔案,源碼閱讀,自然由此開始。在源碼閱讀的過程中,我們並不會逐行進行解釋,而只解釋核心的功能和實現。1. 設定應用程式環境define('ENVIRONMENT', 'development');這裡的development可以是任何你喜歡的環境名稱(比如dev,再如test),相對應的,你要在下面的switch
Time of Update: 2016-07-29
1. __toString()PHP 魔術方法" title="">2. __invoke()PHP 魔術方法" title="">3. call(),callStatic() —方法重載(overwrite)PHP 魔術方法" title="">PHP 魔術方法" title="">4. __get(),__set() —屬性重載(overloading)PHP 魔術方法" title="">5. __clone()PHP 魔術方法" title="">classA{public$name;}
Time of Update: 2016-07-29
之前每開發一個計劃任務功能均需要線上上操作crontab來新增項,所以想採用PHP來統一管理單個項目中的任務項, 可以通過建立表[id,name,status,func,timer,last_time,created_at] 來統一存放項目中的計劃任務指令碼,通過簡單的配置 能將各計劃任務抽象成簡單的任務類,然後通過crontab中配置的單個入口對其進行統一訪問,從而減少了上線代碼對 線上伺服器環境進行修改的麻煩. 然後此處有一些坑,因為任務按功能性質劃分可能有好幾種,比如: 1.
Time of Update: 2016-07-29
//PHP判斷一個string 是否是json stringpublicfunctionisJsonString($str) {try { $jObject = json_decode($str); } catch (Exception$exc) { returnFALSE; } return (is_object($jObject)) ? TRUE : FALSE; }').addClass('pre-numbering').hide()
Time of Update: 2016-07-29
1、問題和原因 樹莓派上的PHP首頁無法運行具有root許可權的命令或指令碼原因,並不是PHP無法執行,而是Apache的許可權不夠!!!!2、PHP運行shell指令碼或Python的方法 php給我們提供了system(),exec(),passthru()這三個函數來調用外部的命令. 雖然這三個命令都能執行linux系統的shell命令,但是其實他們是有區別的: system() 輸出並返回最後一行shell結果。 exec()
Time of Update: 2016-07-29
1、global 函數內訪問全域變數php$x=5;$y=10;function myTest(){global$x,$y;$y=$x+$y;}myTest();echo$y; // 輸出 15?>如果myTest函數裡不使用global,無法使用PHP 將所有全域變數儲存在一個名為 $GLOBALS[index] 的數組中。 index 儲存變數的名稱。這個數組可以在函數內部訪問,也可以直接用來更新全域變數。 如$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']
Time of Update: 2016-07-29
URL rewrite (偽靜態)html純靜態頁的好處有4點: 1、載入的時候不需要調用資料庫,開啟速度快。 2、減少了伺服器對資料響應的負荷。 3、從安全形度講,純靜態網頁不易遭受駭客攻擊。 4、從網站穩定性來講,即使網站代碼或資料庫出了問題,靜態網站也不會受到影響。
Time of Update: 2016-07-29
第一次使用PhpStorm開發,各種配置會使得開發更簡便。xdebug安裝第一步:在php.ini中開啟xdubug擴充[XDebug]xdebug.profiler_append = 0xdebug.profiler_enable = 1xdebug.profiler_enable_trigger = 0xdebug.profiler_output_dir ="C:\Program Files\phpStudy\tmp\xdebug"xdebug.trace_output_dir