PHP與CI學習筆記

CodeIgniter框架學習php

安裝

下載好包後,解壓複製 system 和 application 目錄到網站目錄下mysql

配置

  1. 配置目錄
    打開index.php設置好 $system_path$application_folder$view_folder 三個變量的值如'/www/MyUser/system'
  2. 配置數據庫
    打開application/config/database.php配置爲
$db['default'] = array(
    'dsn'   => '',
    'hostname' => 'localhost',
    'username' => 'root',
    'password' => '',
    'database' => 'database_name',
    'dbdriver' => 'mysqli',
    'dbprefix' => '',
    'pconnect' => TRUE,
    'db_debug' => TRUE,
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array()
);

測試mysqlsql

<?php
defined('BASEPATH') OR exit('數據庫驅動腳本不成功');
class Db extends CI_Controller{
public function demo()
{
    $this->load->database();
    $query = $this->db->query('SELECT * FROM users');
foreach ($query->result() as $row)
{
    echo $row->id;//id爲字段號
    echo $row->name;
    echo $row->mail;
}
echo 'Total Results: ' . $query->num_rows();
}
}

注:CI框架控制器以大寫開頭數據庫

CI框架DB操做

codeigniter (CI)是一個優秀、敏捷的PHP開源框架,尤爲封裝了對數據庫的操做,很方便,如下是php ci經常使用的數據庫操做,做個記錄:數組

查詢操做

$query = $this->db_query("SELECT * FROM table");//查詢
$data = $query->result();//返回對象數組
$data = $query->result_array();// 返回數組
$data = $query->row();//只返回一行對象數組
$data = $query->num_rows();//返回查詢結果行數
$data = $query->num_fields();//返回查詢請求的字段個數
$data = $query->row_array();//只返回一行數組
$data = $query->free_result();//釋放當前查詢所佔用的內存並刪除關聯資源標識

插入操做

echo $this->db->insert_id();//上次插入操做生成的ID
echo $this->db->affected_rows();//寫入和更新操做被影響的行數
echo $this->db->count_all('table_name');//返回指定表的總行數
echo $this->db->version();//輸出當前的數據庫版本號
echo $this->db->platform();//輸出當前的數據庫平臺
echo $this->db->last_query();//返回最後運行的查詢語句
//$data = array('name' => $name, 'email' => $email, 'url' => $url);
$this->db->insert_string('table_name', $data);//插入數據,被插入的數據會被自動轉換和過濾

更新操做

//$data = array('name' => $name, 'email' => $email, 'url' => $url);
//$where = "author_id = 1 AND status = 'active'";
$this->db->update_string('table_name', $data, $where);//更新數據,被更新的數據會被自動轉換和過濾,例如:

選擇數據

$this->db->get('table_name');//獲取表的所有數據
$this->db->get('table_name', 10, 20);//第二個參數爲輸出條數,第三個參數爲開始位置
$this->db->get_where('table_name', array('id'=>$id), $offset);//獲取數據,第一個參數爲表名,第二個爲獲取條件,第三個爲條數
//select方式獲取數據
$this->db->select('title, content, date');
$data = $this->db->get('table_name');
//獲取字段的最大值,第二個參數爲別名,至關於max(age) AS nianling
$this->db->select_max('age');
$this->db->select_max('age', 'nianling');
//獲取字段的最小值
$this->db->select_min('age');
$this->db->select_min('age', 'nianling');
//獲取字段的和
$this->db->select_sum('age');
$this->db->select_sum('age', 'nianling');
//自定義from表
$this->db->select('title, content, date');
$this->db->from('table_name');
//查詢條件 WHERE name = 'Joe' AND title = 'boss' AND status = 'active'
$this->db->where('name', $name);
$this->db->where('title', $title);
$this->db->where('status', $status);
//範圍查詢
$this->db->where_in('item1', 'item2');
$this->db->where_not_in('item1', 'item2');
//匹配,第三個參數爲匹配模式 title LIKE '%match%'
$this->db->like('title', 'match', 'before/after/both');
$this->db->not_like();
//分組 GROUP BY title, date
$this->db->group_by('title', 'date');
//限制條數
$this->db->limit(0, 20);

PHP學習

require '17mb/class/sql.php';須要這文件
$url=$_SERVER['REQUEST_URI'];URL地址
$_GET[sortid]取GET的sortid的變量
abs(-4.2)//4.2,的絕對值
ceil(9.999)//10 進一法取整
mt_rand(0,9)//0到9中的隨機數,比rand()更好
pi()圓周率值,常量
min()返回最小值,
trim()刪除二邊的空格 前面加R與L各表明右\左
str_pad($str,20,".")填充指定的長度
str_repeat(".",10)重複輸出10個.字符串
str_split("Hello")輸出字符串對應的數組
strrev()反轉字符串
wordwrap($str,15)按指定長度拆行
大小寫轉換:
strtolower全小寫 strtoupper全大寫 ucfirst字符串第一個大寫 ucwords每一個單詞首字母大寫
strcasecmp()不區分大小寫比較兩字符串
md5()字符串md5編碼app

https://www.jb51.net/article/101179.htm框架

http://www.javashuo.com/article/p-cxlkwdfp-ba.htmlcodeigniter

mysql語句

建立表學習

CREATE TABLE wedconfig
    (
    id   INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    name VARCHAR (20),
    name_value  VARCHAR (100)   
  )
相關文章
相關標籤/搜索