Я хотел бы создать 3 разных массива, которые могут меняться в зависимости от того, какие поля извлекаются из некоторых таблиц mysql.
Вот мой код:
// Gather db rows with query
$compQuery['subCats'] = mysql_query("SELECT id,name,category FROM subcategories ORDER BY id DESC");
$compQuery['cats'] = mysql_query("SELECT id,name FROM categories ORDER BY id DESC");
$compQuery['mans'] = mysql_query("SELECT id,name,link FROM manufacturers ORDER BY id DESC");
// Place rows into arrays
foreach($compQuery as $name=>$query){
$name = array();
while($data = mysql_fetch_array($compQuery[$name])){
foreach($data as $key=>$value){
$$name[$key] = $value;
}
}
}
Что бы я хотеложидаем, что это даст 3 массива: subCats, cats и man каждый с парой значений.Вместо того, чтобы находить переменную $$ name и присваивать массиву значение [$ key] = $, он берет одну букву из переменной $$ name и присваивает значение $ этой новой переменной.
ДляНапример, если $ name = 'subCats', $ key = '3' и value = 'machine tools'
Это создаст переменную $ C с использованием 3-й буквы в subCats:
$C = 'machine tools'
Что нужно сделать, так это создать:
$subCats[3] = 'machine tools';
Теперь, очевидно, есть более простые способы создания отдельных массивов для каждого запроса, и я изменил свой код до более легкой / более простой версии.Тем не менее, мне все еще интересно, как мне назначить пару ключ-значение для переменной с двойным знаком доллара.
Любая помощь будет принята с благодарностью!У меня сейчас работает простой код, но я бы хотел, чтобы этот новый код был более динамичным и позволял выполнять больше запросов по мере необходимости без хлопот.
Спасибо!
Джош