¿Es esta línea legal PHP?
$this->mongo->($this->db)->$collection_name->insert($document_name);
si $ this-> db es una constante con el nombre de db a usar.
Gracias
¿Es esta línea legal PHP?
$this->mongo->($this->db)->$collection_name->insert($document_name);
si $ this-> db es una constante con el nombre de db a usar.
Gracias
No, cuerdas (y por lo tanto su constante) debe ser envuelto entre paréntesis, así:
$this->mongo->{$this->db}->$collection_name->insert($document_name);
Trate de usar llaves en lugar de paréntesis:
$this->mongo->{$this->db}->$collection_name->insert($document_name);
o asignar $this->db
a un var local y usando ese lugar:
$db_name = $this->db;
$this->mongo->$db_name->$collection_name->insert($document_name);
No, no se puede tener ->() -> donde tienes mongo -> ($ this-> db) -> $ coll ... Quizás estabas buscando
$this->mongo($this->db)->$collection_name->insert($document_name);
$connection->db->collection
es la abreviatura de:
$this->mongo->selectDB($this->db)->selectCollection($collection_name)->insert(...);
que podría funcionar mejor en su caso . +1 para la respuesta de BoltClock, también, si desea seguir con el estilo $x->y->z
.
Querías $this->mongo->selectDB($this->db)->$collection_name->insert($document_name)
responsabilidad: nunca he trabajado con MongoDB. (Algún día ...) – BoltClock
¡genial! agregará como solución una vez que el desbordamiento de pila me lo permita. la opción dos es mal estilo. y MongoDB es increíble! – CamelCamelCamel