Для моей функции connectDB мне нужно обрезать все параметры, и я не хочу делать это отдельно для каждого из них.DB conn method + Первый символ имени переменной в PHP
$g_app = 'we bsite';
$g_dbc_type = '';
$g_dbc_host = '';
$g_dbc_user = '';
$g_dbc_pass = '';
$g_dbc_db = '';
function connectDB ($app, $type, $host, $user, $pass, $db) {
if ($app !== '') {
$params_vals = array ($app, $type, $host, $user, $pass, $db);
// I WANT TO DO THIS... ----------------------------------------
foreach ($params_vals as $val) {
if ($val !== '') {
$trimmed_val = str_replace (' ', '', $val);
Получить первый символ с переменным именем? Поскольку он находится в цикле foreach, я не уверен, что смогу достичь своей цели таким образом, а если нет, есть ли другой способ?
$first_char = '';
if (!isset (${ $first_char })) {
$ { $first_char } = $trimmed_val;
}
else {
die(); // Variable should not been already set, but it is.
}
echo ${ $first_char } . ':<br />' . $trimmed_val;
}
}
// ...INSTEAD OF THIS... -------------------------------------
$a = str_replace (' ', '', $app);
$t = str_replace (' ', '', $type);
$h = str_replace (' ', '', $host);
$u = str_replace (' ', '', $user);
$p = str_replace (' ', '', $pass);
$d = str_replace (' ', '', $db);
// ...
if ($a === 'website') {
// ...
}
}
else {
die(); // App has not been chosen.
}
}
connectDb ($g_app, $g_dbc_type, $g_dbc_host, $g_dbc_user, $g_dbc_pass, $g_dbc_db);
Кроме того, является ли этот способ связи несовместимым с безопасностью?
Благодарим вас за ваши предложения и отзывы.
Обычно данные, используемые для подключения к базе данных жёстко или извлекаются из доверенного и защищенного файла конфигурации. Зачем вам это нужно? – ForguesR
Поскольку приложения для ИТ-инфраструктуры фирмы должны основываться на том же индексе, я бы хотел подключиться к базе данных только с одной функцией, и это самый простой способ, о котором я мог думать. – falcon
@ForguesR Все о программировании, которое я узнал дома, поэтому я не знаю общих методов. Не могли бы вы предложить мне другой способ несколькими словами? Также я прошу прощения за некоторые опечатки, мой английский не очень хорош. – falcon