sql >> Base de Datos >  >> RDS >> Mysql

Pasar la conexión de la base de datos por referencia en PHP

Un recurso PHP es un tipo especial que ya es una referencia en sí mismo. Pasarlo por valor o explícitamente por referencia no hará la diferencia (es decir, sigue siendo una referencia). Puede verificar esto usted mismo en 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