Php7適應:修訂版本之間的差異

出自六年制學程
跳轉到: 導覽搜尋
(三)域名決定
etable 對 mysqli_query 引數中連結在前的適應
第 39 行: 第 39 行:
 
====(一)工作程式====
 
====(一)工作程式====
 
====(二)site專一====
 
====(二)site專一====
 +
在 siteConstant.php 中有 signInTable 常數指定認證資料表
 
====(三)域名決定====
 
====(三)域名決定====
 
在 constant.php 中一個域名對應一個 DSN 常數
 
在 constant.php 中一個域名對應一個 DSN 常數
 +
 +
====(四)域名決定====
  
 
===preg_replace的e修飾===
 
===preg_replace的e修飾===

2020年4月4日 (六) 23:51的修訂版本

資料庫

  1. $conn = mysqli_connect($DBHOST, $DBUSER, $DBPASSWD):建立資料庫連線,如果$conn=false代表連結不成功
  2. mysqli_select_db($conn, $DBNAME):選取資料庫
  3. $result = mysqli_query($conn, $sql):查詢
    • SELECT, SHOW, DESCRIBE, EXPLAIN 等如果成功則取回 resultset ,否則為 false
    • INSERT, UPDATE, DELETE, DROP 等成功則傳回 true,否則為 false
  4. mysqli_connect_errno($conn):傳回連結資料庫的錯誤碼。如果沒有錯誤發生則返回 0。
  5. mysqli_connect_error():傳回連結錯誤的原因,如「Access denied for user 'root'@'localhost' (using password: YES)」。注意:因連結沒有成功,所以引數中不是連結,而是無引數。
  6. mysqli_errno($conn):傳回查詢指令的錯誤碼。如果沒有錯誤發生則返回 0。
  7. mysqli_error($conn):傳回查詢指令的錯誤訊息。
    • 錯誤碼列表,進一步點進去可以看錯誤碼與錯誤訊息列表。
  8. mysqli_num_rows($result):取回結果中的筆數
  9. mysqli_num_fields($result):獲取結果中的欄數
  10. mysqli_fetch_assoc($result):同mysqli_fetch_array(result,MYSQLI_ASSOC)
  11. mysqli_fetch_array(result[,resulttype]):取代 mysql_fetch_array 。resulttype預設為 MYSQLI_BOTH ,另二值為 MYSQLI_ASSOC,MYSQLI_NUM 。
  12. $obj = mysqli_fetch_object($result):取回物件形態資料
  13. mysqli_insert_id($conn):取回最後一筆異動的索引
    • 一定要有一個欄位有 auto_increment 屬性,否則回傳0
    • 一定之前要有insert或update操作,否則回傳0
  14. mysqli_free_result($result):釋放結果集
  15. mysqli_close($con):關閉連線,繳回連結
  16. mysqli_fetch_field_direct($result,第幾欄):返回一個物件,包含來自指定結果集中的欄位定義信息。沒有指定第幾欄,則返回FALSE。諸屬性:
    • name 欄代名
    • orgname 原始欄名(如果指定了別名)
    • table 此欄所屬的表的名稱(如果非演算欄)
    • orgtable 原始表名(如果已指定別名)
    • def 此欄的預設值,以字符串表示
    • max_length 結果集欄的最大寬度。
    • length 在表定義中指定的欄寬度。
    • charsetnr 欄的字符集編號。
    • flags 一個整數,表示該欄的位標誌。
    • type 用於此欄的數據類型
    • decimals 使用的小數位數(用於數字欄)
  17. mysqli_fetch_field() - 返回結果集中的下一個欄
  18. mysqli_fetch_fields() - 返回表示結果集中欄的物件陣列
  19. mysqli_data_seek($result,跳過幾筆):調整結果指針到結果集中的一個任意行

etable 對 mysqli_query 引數中連結在前的適應

(一)工作程式

(二)site專一

在 siteConstant.php 中有 signInTable 常數指定認證資料表

(三)域名決定

在 constant.php 中一個域名對應一個 DSN 常數

(四)域名決定

preg_replace的e修飾

/et/class/wiki/Sanitizer.php 的 565 行

原:
$stripped = preg_replace( '!\\\\([0-9A-Fa-f]{1,6})[ \\n\\r\\t\\f]?!e',
'codepointToUtf8(hexdec("$1"))', $stripped );

先註解掉,以後再改。