<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Sends a basic COM_* command</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="mysqlnduhconnection.shutdownserver.html">MysqlndUhConnection::shutdownServer</a></div> <div class="next" style="text-align: right; float: right;"><a href="mysqlnduhconnection.simplecommandhandleresponse.html">MysqlndUhConnection::simpleCommandHandleResponse</a></div> <div class="up"><a href="class.mysqlnduhconnection.html">MysqlndUhConnection</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="mysqlnduhconnection.simplecommand" class="refentry"> <div class="refnamediv"> <h1 class="refname">MysqlndUhConnection::simpleCommand</h1> <p class="verinfo">(PECL mysqlnd-uh >= 1.0.0-alpha)</p><p class="refpurpose"><span class="refname">MysqlndUhConnection::simpleCommand</span> — <span class="dc-title">Sends a basic COM_* command</span></p> </div> <div class="refsect1 description" id="refsect1-mysqlnduhconnection.simplecommand-description"> <h3 class="title">Description</h3> <div class="methodsynopsis dc-description"> <span class="modifier">public</span> <span class="type">bool</span> <span class="methodname"><strong>MysqlndUhConnection::simpleCommand</strong></span> ( <span class="methodparam"><span class="type"><span class="type mysqlnd_connection">mysqlnd_connection</span></span> <code class="parameter">$connection</code></span> , <span class="methodparam"><span class="type">int</span> <code class="parameter">$command</code></span> , <span class="methodparam"><span class="type">string</span> <code class="parameter">$arg</code></span> , <span class="methodparam"><span class="type">int</span> <code class="parameter">$ok_packet</code></span> , <span class="methodparam"><span class="type">bool</span> <code class="parameter">$silent</code></span> , <span class="methodparam"><span class="type">bool</span> <code class="parameter">$ignore_upsert_status</code></span> )</div> <p class="para rdfs-comment"> Sends a basic COM_* command to MySQL. </p> </div> <div class="refsect1 parameters" id="refsect1-mysqlnduhconnection.simplecommand-parameters"> <h3 class="title">Parameters</h3> <dl> <dt> <span class="term"><em><code class="parameter">connection</code></em></span> <dd> <p class="para"> Mysqlnd connection handle. Do not modify! </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">command</code></em></span> <dd> <p class="para"> The COM command to be send. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">arg</code></em></span> <dd> <p class="para"> Optional COM command arguments. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">ok_packet</code></em></span> <dd> <p class="para"> The OK packet type. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">silent</code></em></span> <dd> <p class="para"> Whether mysqlnd may emit errors. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">ignore_upsert_status</code></em></span> <dd> <p class="para"> Whether to ignore <em>UPDATE</em>/<em>INSERT</em> status. </p> </dd> </dt> </dl> </div> <div class="refsect1 returnvalues" id="refsect1-mysqlnduhconnection.simplecommand-returnvalues"> <h3 class="title">Return Values</h3> <p class="para"> Returns <strong><code>TRUE</code></strong> on success. Otherwise, returns <strong><code>FALSE</code></strong> </p> </div> <div class="refsect1 examples" id="refsect1-mysqlnduhconnection.simplecommand-examples"> <h3 class="title">Examples</h3> <p class="para"> <div class="example" id="example-1919"> <p><strong>Example #1 <span class="function"><strong>MysqlndUhConnection::simpleCommand()</strong></span> example</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br /></span><span style="color: #007700">function </span><span style="color: #0000BB">server_cmd_2_string</span><span style="color: #007700">(</span><span style="color: #0000BB">$command</span><span style="color: #007700">) {<br /> </span><span style="color: #0000BB">$mapping </span><span style="color: #007700">= array(<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_SLEEP </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_SLEEP"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_QUIT </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_QUIT"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_INIT_DB </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_INIT_DB"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_QUERY </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_QUERY"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_FIELD_LIST </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_FIELD_LIST"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_CREATE_DB </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_CREATE_DB"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_DROP_DB </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_DROP_DB"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_REFRESH </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_REFRESH"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_SHUTDOWN </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_SHUTDOWN"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_STATISTICS </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_STATISTICS"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_PROCESS_INFO </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_PROCESS_INFO"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_CONNECT </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_CONNECT"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_PROCESS_KILL </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_PROCESS_KILL"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_DEBUG </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_DEBUG"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_PING </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_PING"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_TIME </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_TIME"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_DELAYED_INSERT </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_DELAYED_INSERT"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_CHANGE_USER </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_CHANGE_USER"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_BINLOG_DUMP </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_BINLOG_DUMP"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_TABLE_DUMP </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_TABLE_DUMP"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_CONNECT_OUT </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_CONNECT_OUT"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_REGISTER_SLAVED </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_REGISTER_SLAVED"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_STMT_PREPARE </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_STMT_PREPARE"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_STMT_EXECUTE </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_STMT_EXECUTE"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_STMT_SEND_LONG_DATA </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_STMT_SEND_LONG_DATA"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_STMT_CLOSE </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_STMT_CLOSE"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_STMT_RESET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_STMT_RESET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_SET_OPTION </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_SET_OPTION"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_STMT_FETCH </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_STMT_FETCH"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_DAEMON </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_DAEMON"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_COM_END </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_COM_END"</span><span style="color: #007700">,<br /> );<br /> return (isset(</span><span style="color: #0000BB">$mapping</span><span style="color: #007700">[</span><span style="color: #0000BB">$command</span><span style="color: #007700">])) ? </span><span style="color: #0000BB">$mapping</span><span style="color: #007700">[</span><span style="color: #0000BB">$command</span><span style="color: #007700">] : </span><span style="color: #DD0000">'unknown'</span><span style="color: #007700">;<br />}<br /><br />function </span><span style="color: #0000BB">ok_packet_2_string</span><span style="color: #007700">(</span><span style="color: #0000BB">$ok_packet</span><span style="color: #007700">) {<br /> </span><span style="color: #0000BB">$mapping </span><span style="color: #007700">= array(<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_GREET_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_GREET_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_AUTH_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_AUTH_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_OK_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_OK_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_EOF_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_EOF_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_CMD_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_CMD_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_RSET_HEADER_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_RSET_HEADER_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_RSET_FLD_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_RSET_FLD_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_ROW_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_ROW_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_STATS_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_STATS_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PREPARE_RESP_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PREPARE_RESP_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_CHG_USER_RESP_PACKET </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_CHG_USER_RESP_PACKET"</span><span style="color: #007700">,<br /> </span><span style="color: #0000BB">MYSQLND_UH_MYSQLND_PROT_LAST </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MYSQLND_UH_MYSQLND_PROT_LAST"</span><span style="color: #007700">,<br /> );<br /> return (isset(</span><span style="color: #0000BB">$mapping</span><span style="color: #007700">[</span><span style="color: #0000BB">$ok_packet</span><span style="color: #007700">])) ? </span><span style="color: #0000BB">$mapping</span><span style="color: #007700">[</span><span style="color: #0000BB">$ok_packet</span><span style="color: #007700">] : </span><span style="color: #DD0000">'unknown'</span><span style="color: #007700">;<br />}<br /><br />class </span><span style="color: #0000BB">proxy </span><span style="color: #007700">extends </span><span style="color: #0000BB">MysqlndUhConnection </span><span style="color: #007700">{<br /> public function </span><span style="color: #0000BB">simpleCommand</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #0000BB">$command</span><span style="color: #007700">, </span><span style="color: #0000BB">$arg</span><span style="color: #007700">, </span><span style="color: #0000BB">$ok_packet</span><span style="color: #007700">, </span><span style="color: #0000BB">$silent</span><span style="color: #007700">, </span><span style="color: #0000BB">$ignore_upsert_status</span><span style="color: #007700">) {<br /> </span><span style="color: #0000BB">printf</span><span style="color: #007700">(</span><span style="color: #DD0000">"%s(%s)\n"</span><span style="color: #007700">, </span><span style="color: #0000BB">__METHOD__</span><span style="color: #007700">, </span><span style="color: #0000BB">var_export</span><span style="color: #007700">(</span><span style="color: #0000BB">func_get_args</span><span style="color: #007700">(), </span><span style="color: #0000BB">true</span><span style="color: #007700">));<br /> </span><span style="color: #0000BB">printf</span><span style="color: #007700">(</span><span style="color: #DD0000">"Command '%s'\n"</span><span style="color: #007700">, </span><span style="color: #0000BB">server_cmd_2_string</span><span style="color: #007700">(</span><span style="color: #0000BB">$command</span><span style="color: #007700">));<br /> </span><span style="color: #0000BB">printf</span><span style="color: #007700">(</span><span style="color: #DD0000">"OK packet '%s'\n"</span><span style="color: #007700">, </span><span style="color: #0000BB">ok_packet_2_string</span><span style="color: #007700">(</span><span style="color: #0000BB">$ok_packet</span><span style="color: #007700">));<br /> </span><span style="color: #0000BB">$ret </span><span style="color: #007700">= </span><span style="color: #0000BB">parent</span><span style="color: #007700">::</span><span style="color: #0000BB">simpleCommand</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #0000BB">$command</span><span style="color: #007700">, </span><span style="color: #0000BB">$arg</span><span style="color: #007700">, </span><span style="color: #0000BB">$ok_packet</span><span style="color: #007700">, </span><span style="color: #0000BB">$silent</span><span style="color: #007700">, </span><span style="color: #0000BB">$ignore_upsert_status</span><span style="color: #007700">);<br /> </span><span style="color: #0000BB">printf</span><span style="color: #007700">(</span><span style="color: #DD0000">"%s returns %s\n"</span><span style="color: #007700">, </span><span style="color: #0000BB">__METHOD__</span><span style="color: #007700">, </span><span style="color: #0000BB">var_export</span><span style="color: #007700">(</span><span style="color: #0000BB">$ret</span><span style="color: #007700">, </span><span style="color: #0000BB">true</span><span style="color: #007700">));<br /> return </span><span style="color: #0000BB">$ret</span><span style="color: #007700">;<br /> }<br />}<br /></span><span style="color: #0000BB">mysqlnd_uh_set_connection_proxy</span><span style="color: #007700">(new </span><span style="color: #0000BB">proxy</span><span style="color: #007700">());<br /></span><span style="color: #0000BB">$mysqli </span><span style="color: #007700">= new </span><span style="color: #0000BB">mysqli</span><span style="color: #007700">(</span><span style="color: #DD0000">"localhost"</span><span style="color: #007700">, </span><span style="color: #DD0000">"root"</span><span style="color: #007700">, </span><span style="color: #DD0000">""</span><span style="color: #007700">, </span><span style="color: #DD0000">"test"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$mysqli</span><span style="color: #007700">-></span><span style="color: #0000BB">query</span><span style="color: #007700">(</span><span style="color: #DD0000">"SELECT 1"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> <div class="example-contents"><p>The above example will output:</p></div> <div class="example-contents screen"> <div class="cdata"><pre> proxy::simpleCommand(array ( 0 => NULL, 1 => 3, 2 => 'SELECT 1', 3 => 13, 4 => false, 5 => false, )) Command 'MYSQLND_UH_MYSQLND_COM_QUERY' OK packet 'MYSQLND_UH_MYSQLND_PROT_LAST' proxy::simpleCommand returns true :)proxy::simpleCommand(array ( 0 => NULL, 1 => 1, 2 => '', 3 => 13, 4 => true, 5 => true, )) Command 'MYSQLND_UH_MYSQLND_COM_QUIT' OK packet 'MYSQLND_UH_MYSQLND_PROT_LAST' proxy::simpleCommand returns true </pre></div> </div> </div> </p> </div> <div class="refsect1 seealso" id="refsect1-mysqlnduhconnection.simplecommand-seealso"> <h3 class="title">See Also</h3> <p class="para"> <ul class="simplelist"> <li class="member"> <span class="function"><a href="function.mysqlnd-uh-set-connection-proxy.html" class="function" rel="rdfs-seeAlso">mysqlnd_uh_set_connection_proxy()</a> - Installs a proxy for mysqlnd connections</span> </li> </ul> </p> </div> </div><hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="mysqlnduhconnection.shutdownserver.html">MysqlndUhConnection::shutdownServer</a></div> <div class="next" style="text-align: right; float: right;"><a href="mysqlnduhconnection.simplecommandhandleresponse.html">MysqlndUhConnection::simpleCommandHandleResponse</a></div> <div class="up"><a href="class.mysqlnduhconnection.html">MysqlndUhConnection</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>