Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Passando conexão de banco de dados por referência em PHP


Um recurso PHP é um tipo especial que já é uma referência em si. Passar por valor ou explicitamente por referência não fará diferença (ou seja, ainda é uma referência). Você pode verificar isso por si mesmo no PHP4:
function get_connection() {
  $test = mysql_connect('localhost', 'user', 'password');
  mysql_select_db('db');
  return $test;
}

$conn1 = get_connection();
$conn2 = get_connection(); // "copied" resource under PHP4

$query = "INSERT INTO test_table (id, field) VALUES ('', 'test')";
mysql_query($query, $conn1);
print mysql_insert_id($conn1)."<br />"; // prints 1

mysql_query($query, $conn2);
print mysql_insert_id($conn2)."<br />"; // prints 2

print mysql_insert_id($conn1); // prints 2, would print 1 if this was not a reference