當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


PHP mysql_connect()和mysql_pconnect()的區別用法及代碼示例

mysql_connect() 函數:mysql_connect() 函數用於與數據庫建立新的連接。該連接在腳本開始執行時建立。與數據庫建立此連接後,隻有在執行腳本之前才有效或與數據庫建立連接。這意味著一旦腳本停止執行,與數據庫的連接也將關閉。 mysql_close()方法用於關閉與數據庫的連接。

示例 1:在下麵的代碼中,如果連接成功,它將顯示 echo 部分,如果出現任何錯誤,它將顯示 die 部分。

PHP


<?php 
   
mysqli_connect("localhost", "gaurav", "", "GeeksForGeeks"); 
  
if(mysqli_connect_error()) 
    echo "Connection Error."; 
else
    echo "Database Connection Established Successfully."; 
  
?>
Database Connection Established Successfully.

示例 2:在以下代碼中,我們連接到端口 3307 上的 geeksforgeeks.org 數據庫。

PHP


<?php 
    
// We connect to geeksforgeeks.org and port 3307 
$link = mysql_connect( 
  'geeksforgeeks.org:3307', 'Gaurav', 'GFG'); 
  
if (!$link) { 
    die('Could not connect: ' . mysql_error()); 
} 
  
echo 'Connected successfully to GFG Database'; 
  
mysql_close($link); 
?>
Connected successfully to GFG Database

mysql_pconnect()函數: mysql_pconnect()是一種與 稍有不同的函數mysql_connect()。當您使用此函數連接到數據庫時,它將搜索是否存在使用相同函數與數據庫建立的任何其他現有連接用戶名密碼, 如果這種情況看起來是真的然後它返回資源 ID。當腳本被調用時,它不會一次又一次地建立連接,並且當腳本停止執行時,它也不會結束連接。這種類型的連接稱為持久連接。

示例 1:在下麵的代碼中,我們使用mysql_pconnect()函數建立持久連接。

PHP


<?php 
$con = mysql_pconnect( 
      "localhost", "mysql_user", "mysql_pwd"); 
  
if (!$con) { 
      die('Could not connect: ' . mysql_error()); 
} 
else { 
      echo("Persistent Connection Established"); 
} 
?>
Persistent Connection Established

示例 2:在以下代碼中,我們使用持久連接 (mysql_pconnect()) 連接到端口 3307 上的 geeksforgeeks.org 數據庫。

PHP


<?php 
    
// We connect to geeksforgeeks.org 
// and port 3307 
$link = mysql_pconnect( 
  'geeksforgeeks.org:3307', 'Gaurav', 'GFG'); 
  
if (!$link) { 
    die('Could not connect: ' . mysql_error()); 
} 
  
echo 'Connected successfully to GFG '
  . 'Database using Persistent Connection'; 
  
mysql_close($link); 
  
?>
Connected successfully to GFG Database using Persistent Connection

mysql_connect()和mysql_pconnect()函數之間的區別:

mysql_connect()函數

mysql_pconnect()函數

該函數在調用腳本時建立與數據庫的連接。 該函數首先檢查是否有相同的連接用戶名密碼是否已創建,如果沒有則建立連接。
mysql_close()方法用於關閉與數據庫的連接。 mysql_close()不關閉與數據庫的連接。
這是一個耗時的函數,因為每次調用它時都會建立一個連接。 它是一個 time-saving 函數,因為它不會在每次調用時都建立連接,而是僅執行一次連接建立。
當要建立新連接時使用它。 當我們不想與數據庫斷開連接並保留它以供將來使用時使用它。
由於每次調用此函數時都會建立連接,因此需要更多內存。 由於僅建立一次連接,因此需要較少的內存
由於使用複雜,不太人性化 由於其簡單性,它更加用戶友好。
每次加載頁麵時都會打開數據庫myql_connect()方法。 每次加載頁麵時都不會打開數據庫mysql_pconnect()方法。


相關用法


注:本文由純淨天空篩選整理自gauravgandal大神的英文原創作品 Difference between mysql_connect() and mysql_pconnect() Functions in PHP。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。