1) Я выбираю козу из раскрывающегося списка и имея goat_id, а его сир и дамба оба поля - это родительское имя goat_name.Рекурсивная функция с уникальным именем в php
2) Я пытаюсь вызвать его рекурсивно с помощью goat_name, для каждого сира и плотины оба поля.
function generate_tree($goat_id)
{
global $wpdb;
// get all records from database whose parent is $id
$sql = $wpdb->prepare("SELECT * FROM mm_goats WHERE id = %d", $goat_id);
$row2 = $wpdb->get_row($sql, ARRAY_A);
//check if there are any results
if(!empty($row2))
{
echo "<ul>";
if($row2['sire'] != "" || $row2['dam'] != "")
{
//print result and call function to check if it has children
echo "<li>Sire: ".$row2['sire']."</li>";
echo "<li>Dam: ".$row2['dam']."</li>";
generate_tree($row2['id']);
}
echo "</ul>";
}
}
Эта функция используется для бесконечной петли с первым выбранным сиром и плотиной.
Следуйте за этой структурой. напр:
Вы проходите мимо e ID текущего козла к вашей рекурсивной функции, а не идентификаторы сира/дамбы, поэтому вы выполняете 'generate_tree (42);', который затем вызывает 'generate_tree (42)', который затем вызывает и т. д. –
Как можно встретить бесконечный цикл без цикла? –
Ох. Я вижу это сейчас .. Я думал @MarcB Говорит о тарабарщине .. Я был не прав .. oops –