2016-12-15 15 views
-1

任何人都可以一步一步來解釋這個函數嗎?我的另一個代碼不工作,這就是爲什麼我認爲我不明白這個功能。以下代碼是誤解功能。 PHP中的小函數的誤解

<?php 
 

 
public function sql_exec($query) 
 
    { 
 
     $query = trim($query); 
 
     
 
     if($this->result = db_query($query, $this->con_id)) 
 
     { 
 
      $this->row_count = db_num_rows($this->result); 
 
      return TRUE; //what it returns exactly?? 
 
     } 
 

 
    } 
 
?>

這就是我所理解的功能(連接做MS SQL)。不知道什麼意思返回true,是否與sqlsrv_fetch_array相同?

<?php 
 
$serverName = "Host"; 
 
$params = array(); 
 
$cursorType = array("Scrollable" => 'keyset'); 
 
$connectionInfo = array("UID"=>"usernam", "PWD"=>"pass", "Database"=>"db", "CharacterSet" => "UTF-8"); 
 
$conn = sqlsrv_connect($serverName, $connectionInfo); 
 

 
$sqlstr1 =sqlsrv_query($conn,"my uqery",$params,$cursorType); 
 
$count=sqlsrv_num_wors($sqlstr1); 
 

 
```````return TRUE;(written in code above)````` what it reutrns? 
 
Is it same as SQLSRV_FETCH_ARRAY? 
 

 
?>

+0

它返回布爾值「true」。這意味着查詢執行成功。 –

+0

謝謝你的回覆。 你的意思是說,如果查詢執行並檢查是否存在與這些數據一起行,如果是,則返回true? 與if(sqlsrv_query($ conn,$ query,$ params))''是否一樣? –

回答

1
<?php 

public function sql_exec($query) 
    { 
     $query = trim($query); 

     if($this->result = db_query($query, $this->con_id)) 
     { 
      $this->row_count = db_num_rows($this->result); 
      return TRUE; //what it returns exactly?? 
     } 

    } 
?> 

如果成功地執行查詢上述代碼返回布爾值TRUE。但是看起來這個函數並沒有被你的例子調用。

+0

它在不同的文件中被調用。它看起來像 '$ cdb-> connect(「MainDB」); $ sqlstr1 =「query」; $ cdb-> sql_exec($ sqlstr1);'我不想使用函數並想使用sqlsrv_query而不是sql_exec,它是一樣的嗎? –

+0

@OrkhanBagirov,您可以使用「sqlsrv_query」,但請記住,如果查詢成功執行,它不會返回TRUE。相反,它會返回一個對象(http://php.net/manual/en/function.sqlsrv-query.php) – Ronald

+0

@OrkhanBagirov,無論如何,我想我已經回答了你的問題。你能接受它還是upvote它? :) – Ronald