【发布时间】:2017-08-25 20:34:39
【问题描述】:
我正在尝试找到一种方法来让名为$connect 的变量运行但不知道如何。
文件名:/engine/init.php
class Engine {
function MySQL() {
$connect = new PDO("mysql:host=$db_host;dbname=$db_name;charset=$db_char", $db_user, $db_pass);
}
}
文件名:/inc/database.php
require 'engine/init.php;
$engine = new Engine;
$conn = $engine->MySQL;
// Activate $connect variable
如果不清楚,请索取更多信息。
谢谢, 呸呸呸_
【问题讨论】:
-
首先
MySQL()不起作用,因为此时您还没有定义$db_host,..。然后如果你想得到 $connect 做return $connect;但这是一个类映射器的一个坏例子。提示:绑定到$this->connect=connet()并重复使用它。 -
变量需要是类级别的,而不是方法级别的:php.net/manual/en/language.oop5.properties.php 或者您是否尝试返回变量?从用法上看不太清楚...
-
坦率地说,这段代码毫无意义。你应该解释你想在这里做什么以及为什么。特别是什么是引擎,为什么你认为需要一个 mysql 方法
-
@JustOnUnderMillions 是的,我知道。我没有输入变量,因为这会导致数据库凭据泄漏。你的答案应该有修复,正在尝试。