В настоящее время работает над сервисным скриптом с другом. Когда я говорю сценарий службы, я имею в виду, что он будет использоваться только для обновления и добавления значений в базу данных. Теперь мой друг сохранил все ее скоро, чтобы быть значениями базы данных в виде массивов.Несколько массивов - Вставить значение в базу данных
Мне уже удалось войти в один из массивов, теперь я смущен тем, как это сделать для нескольких массивов. Таким образом, все это больше связано с тем, как я могу реорганизовать текущий текущий код , чтобы быть более динамичным.
Также, пожалуйста, имейте в виду, что у нее есть сотни массивов, которые нужно сделать так, чтобы не было 2 или 3 его буквально сотен.
Мой обновленный код: (пожалуйста, прочитайте комментарии)
$colors['Colors_All'] = array("Black","Charcoal"); // Add unique indexes
$colors['Colors_Bright_All'] = array("Silver","White"); // Add unique indexes
$AllArrays = get_defined_vars(); // Get all defined vars
$Arrays = array(); // Set a default array
foreach ($AllArrays as $varName => $value) { // Run through all the variables set in AllArrays
if(is_array($value) && $varName == 'colors') { // If array is colors then
$Arrays = array_merge($Arrays, $value); // Merge those arrays into the new array
}
}
var_dump($Arrays);
$sql = "INSERT INTO `product_features` ("; // Create the initial query
foreach ($Arrays as $column => $value) { // ForEach over the array
$sql .= "$column,"; // Use the Key Example : 'Colors_All and Color_Bright_All' as a column name
}
$sql2 = rtrim($sql, ","); // trim the initial "," from the columns at the end
$sql2 .= ")"; // Close off the columns names
$sql2 .= " VALUES ";
foreach ($Arrays as $column => $value) { // This is where the problem starts -_-
foreach ($value as $key => $insert) { // Get the value
$sql2 .= "('$insert', '$insert'),"; // I need to have unique values here :(
}
}
$finSQL = rtrim($sql2, ","); // Strip off the remaining ","
Также я знаю, что я не обязательные параметры, я один раз я получаю фактический жесткий материал из пути.
Теперь при выполнении дампа $ finSQL я получаю это:
string(152) "INSERT INTO `product_features` (Colors_All,Colors_Bright_All) VALUES ('Black', 'Black'),('Charcoal', 'Charcoal'),('Silver', 'Silver'),('White', 'White')"
Как я могу иметь уникальные значения быть ЗНАЧЕНИЯ в моей вставки запроса? Это последняя часть этого, которая меня сбивает с толку.
У вас есть много определенных переменных определенный в PHP-скрипте? Я бы не рекомендовал его, но если они не следуют явному шаблону, вы можете попробовать использовать 'get_defined_vars()'. Можете ли вы показать немного больше своего кода? – calcinai
Не могли бы вы изменить то, что вы только что набрали? Куча определенных переменных, определенных в PHP-документе? И я посмотрю на get_defined_vars() –
Кажется, что вам не хватает разумного ключа, чтобы связать различные цвета вместе. Это поможет, если вы объясните, как должна выглядеть конечная база данных. –