blob: 4fc8947431888846430d9e8661b0c25de64f6ecb [file] [log] [blame]
Derek Allard2067d1a2008-11-13 22:59:24 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3<head>
4
5<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6<title>Custom Function Calls : CodeIgniter User Guide</title>
7
8<style type='text/css' media='all'>@import url('../userguide.css');</style>
9<link rel='stylesheet' type='text/css' media='all' href='../userguide.css' />
10
11<script type="text/javascript" src="../nav/nav.js"></script>
12<script type="text/javascript" src="../nav/prototype.lite.js"></script>
13<script type="text/javascript" src="../nav/moo.fx.js"></script>
14<script type="text/javascript" src="../nav/user_guide_menu.js"></script>
15
16<meta http-equiv='expires' content='-1' />
17<meta http-equiv= 'pragma' content='no-cache' />
18<meta name='robots' content='all' />
19<meta name='author' content='ExpressionEngine Dev Team' />
20<meta name='description' content='CodeIgniter User Guide' />
21
22</head>
23<body>
24
25<!-- START NAVIGATION -->
26<div id="nav"><div id="nav_inner"><script type="text/javascript">create_menu('../');</script></div></div>
27<div id="nav2"><a name="top"></a><a href="javascript:void(0);" onclick="myHeight.toggle();"><img src="../images/nav_toggle_darker.jpg" width="154" height="43" border="0" title="Toggle Table of Contents" alt="Toggle Table of Contents" /></a></div>
28<div id="masthead">
29<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
30<tr>
Phil Sturgeon9c63d0b2011-10-27 01:55:44 +010031<td><h1>CodeIgniter User Guide Version 2.1.0</h1></td>
Derek Allard2067d1a2008-11-13 22:59:24 +000032<td id="breadcrumb_right"><a href="../toc.html">Table of Contents Page</a></td>
33</tr>
34</table>
35</div>
36<!-- END NAVIGATION -->
37
38
39<!-- START BREADCRUMB -->
40<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
41<tr>
42<td id="breadcrumb">
43<a href="http://codeigniter.com/">CodeIgniter Home</a> &nbsp;&#8250;&nbsp;
44<a href="../index.html">User Guide Home</a> &nbsp;&#8250;&nbsp;
45<a href="index.html">Database Library</a> &nbsp;&#8250;&nbsp;
46Custom Function Calls
47</td>
48<td id="searchbox"><form method="get" action="http://www.google.com/search"><input type="hidden" name="as_sitesearch" id="as_sitesearch" value="codeigniter.com/user_guide/" />Search User Guide&nbsp; <input type="text" class="input" style="width:200px;" name="q" id="q" size="31" maxlength="255" value="" />&nbsp;<input type="submit" class="submit" name="sa" value="Go" /></form></td>
49</tr>
50</table>
51<!-- END BREADCRUMB -->
52
53
54<br clear="all" />
55
56
57<!-- START CONTENT -->
58<div id="content">
59
60<h1>Custom Function Calls</h1>
61
62<h2>$this->db->call_function();</h2>
63
64<p>This function enables you to call PHP database functions that are not natively included in CodeIgniter, in a platform independent manner.
65For example, lets say you want to call the <dfn>mysql_get_client_info()</dfn> function, which is <strong>not</strong> natively supported
Derek Jones4b9c6292011-07-01 17:40:48 -050066by CodeIgniter. You could do so like this:
Derek Allard2067d1a2008-11-13 22:59:24 +000067</p>
68
69<code>$this->db->call_function('<var>get_client_info</var>');</code>
70
Derek Jones4b9c6292011-07-01 17:40:48 -050071<p>You must supply the name of the function, <strong>without</strong> the <var>mysql_</var> prefix, in the first parameter. The prefix is added
72automatically based on which database driver is currently being used. This permits you to run the same function on different database platforms.
Derek Allard2067d1a2008-11-13 22:59:24 +000073Obviously not all function calls are identical between platforms, so there are limits to how useful this function can be in terms of portability.</p>
74
75<p>Any parameters needed by the function you are calling will be added to the second parameter.</p>
76
77<code>$this->db->call_function('<var>some_function</var>', $param1, $param2, etc..);</code>
78
79
Derek Jones4b9c6292011-07-01 17:40:48 -050080<p>Often, you will either need to supply a database connection ID or a database result ID. The connection ID can be accessed using:</p>
Derek Allard2067d1a2008-11-13 22:59:24 +000081
82<code>$this->db->conn_id;</code>
83
84<p>The result ID can be accessed from within your result object, like this:</p>
85
86<code>$query = $this->db->query("SOME QUERY");<br />
87<br />
88<var>$query->result_id;</var></code>
89
90
91
92
93
94
95
96
97
98
99
Barry Mienydd671972010-10-04 16:33:58 +0200100
Derek Allard2067d1a2008-11-13 22:59:24 +0000101
102</div>
103<!-- END CONTENT -->
104
105
106<div id="footer">
107<p>
108Previous Topic:&nbsp;&nbsp;<a href="fields.html">Field MetaData</a>
109&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
110<a href="#top">Top of Page</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
111<a href="../index.html">User Guide Home</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
112Next Topic:&nbsp;&nbsp;<a href="caching.html">Query Caching</a>
113</p>
Derek Jones898949f2011-01-28 07:42:16 -0600114<p><a href="http://codeigniter.com">CodeIgniter</a> &nbsp;&middot;&nbsp; Copyright &#169; 2006 - 2011 &nbsp;&middot;&nbsp; <a href="http://ellislab.com/">EllisLab, Inc.</a></p>
Derek Allard2067d1a2008-11-13 22:59:24 +0000115</div>
116
117</body>
adminfb28bb82006-09-24 17:59:33 +0000118</html>