unexpected t_object_operator
Hello,
Olyan problémám lenne, hogy ez nem megy:
Holott ez viszont működik:
Ezek szerint az első változat az ekkora hülyeség, vagy csak kell valami plussz, hogy működjön (php4)?
A
A
■ Olyan problémám lenne, hogy ez nem megy:
$query = DB_Factory()->prepare("valami sql query");
Holott ez viszont működik:
$db = DB_Factory();
$query = $db->prepare("valami sql query");
$query = $db->prepare("valami sql query");
Ezek szerint az első változat az ekkora hülyeség, vagy csak kell valami plussz, hogy működjön (php4)?
A
DB_Factory()
függvény:function DB_Factory($type="") {
switch ($type) {
case "Login":
return new DB_Connect_Login();
break;
default:
return new DB_Connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
break;
}
}
switch ($type) {
case "Login":
return new DB_Connect_Login();
break;
default:
return new DB_Connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
break;
}
}
A
DB_Connect
osztály:class DB_Connect
{
var $connection = false;
var $host, $user, $pass, $name;
function DB_Connect($db_host, $db_user, $db_pass, $db_name) {
$this->host = $db_host;
$this->user = $db_user;
$this->pass = $db_pass;
$this->name = $db_name;
}
function connect() {
$this->connection = mysql_connect($this->host, $this->user, $this->pass);
if (!$this->connection OR !is_resource($this->connection)) {
return false;
}
if (!mysql_select_db($this->name)) {
return false;
}
return true;
}
function prepare($query) {
if (!$this->connection && !$this->connect()) {
return false;
}
return new DB_Query($this->connection, $this->query);
}
}
{
var $connection = false;
var $host, $user, $pass, $name;
function DB_Connect($db_host, $db_user, $db_pass, $db_name) {
$this->host = $db_host;
$this->user = $db_user;
$this->pass = $db_pass;
$this->name = $db_name;
}
function connect() {
$this->connection = mysql_connect($this->host, $this->user, $this->pass);
if (!$this->connection OR !is_resource($this->connection)) {
return false;
}
if (!mysql_select_db($this->name)) {
return false;
}
return true;
}
function prepare($query) {
if (!$this->connection && !$this->connect()) {
return false;
}
return new DB_Query($this->connection, $this->query);
}
}
PHP öt
a PHP 5 már sokkal több ilyen-olyan, objektum-orientált programozást megkönnyítő/segítő nyelvi szerkezettel trendelkezik, tessék azt használni ha OOP-zel.
bbalint
Sajnos nem én határozom