注意:
因為我認定 ci核心 應該都要放在 core/底下 所以我有再次修正
另外是我們使用的 並不是 CI_DB_mysql_driver 是 CI_DB_mysqli_driver 所以 有再次修正
閱讀全文〈修正 ci3 DB繼承〉
標籤: ci
ci framework email 解決標題亂碼
ci framework email 解決標題亂碼
CodeIgniter routes.php use db database
如果想在ci的routes.php使用db的資料來控制 那這是一個方法 當然我覺得應該有更好的處理方式 像是 ci的hooks 不過經過簡單的研究後 還是覺得這方式最直觀(難度較低)
閱讀全文〈CodeIgniter routes.php use db database〉
[轉貼]PHP-CI – 壓縮輸出網頁原始碼
PHP-CI – 壓縮輸出網頁原始碼
https://php.quicoto.com/how-to-speed-up-codeigniter/
單元測試類別(unit test)
public function test() { $this->load->library('unit_test'); $test = 1 + 2; $expected_result = $this->test_fun(1,2); $test_name = '測試判斷'; $this->unit->run($test, $expected_result, $test_name); echo $this->unit->report(); } private function test_fun($a,$b) { return $a+$b; }
php – 如何使用codeigniter中的事務進行基於數據更改的提交和回滾
// sql rollback $this->db->trans_start(); // sql $this->db->query(); $this->db->trans_complete(); if ($this->db->trans_status() === FALSE) { $this->db->trans_rollback(); } else { $this->db->trans_commit(); }
[轉貼]模板 library
網友分享了一個模板的方式 個人覺得還算不錯 做個紀錄
不過有點可惜目前切出來的板應用不上…有槍沒槍手呀…
Template library for Codeigniter · GitHub
「CodeIgniter」-怎麼做到「如果其中一個SQL命令執行失敗,則回滾已操作的命令」?-Transaction – 陳董 Don Chen
來源: 「CodeIgniter」-怎麼做到「如果其中一個SQL命令執行失敗,則回滾已操作的命令」?-Transaction – 陳董 Don Chen
CodeIgniter Transaction的使用:
$this->db->trans_start(); $this ->db -> insert(‘user’,$i_data); $this -> db ->insert(‘score’,$i_data2); $this->db->trans_complete();
如果insert score的時候發生了問題,則已經執行的inser user會回滾。
PHP Html Purifier 編輯器過濾 xss
剛好我用的是CI..
https://github.com/refringe/codeigniter-htmlpurifier
只是這個範例要安裝composer 然後修改autoload位置..確實過濾的蠻強大的…
另外提醒..光靠前端的js抵禦 是沒意義的喔..
把其中的
require_once APPPATH.'third_party/htmlpurifier-4.8.0-standalone/HTMLPurifier.standalone.php';
修正為
require dirname(dirname(__DIR__)) . '/vendor/autoload.php';
測試方法
$dirty_html = <<<TEST 攻擊字串...etc TEST; $this->load->helper('htmlpurifier'); $clean_html = html_purify($dirty_html); var_dump($clean_html);
php ci framework to nginx
php CodeIgniter framework 在 nginx上要開啟 必須注意 php-cgi設定
location ~ \.php$ { fastcgi_pass unix:/dev/shm/php-cgi.sock; fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(.*)$; include fastcgi.conf; }
關鍵設定在這句 如未設定 會導致urls異常 造成拒絕訪問 or 404 error
fastcgi_split_path_info ^(.+\.php)(.*)$;
php ci 除錯模式打開
php ci 除錯模式打開
$this->output->enable_profiler(TRUE);