Php 在递归函数中按字母顺序排序结果
我不得不使用递归函数来填充下拉列表,然而,当我尝试使用Php 在递归函数中按字母顺序排序结果,php,Php,我不得不使用递归函数来填充下拉列表,然而,当我尝试使用orderby按字母顺序显示结果时,它没有起作用! 下面是我的递归函数: function tree($root) { global $conn; $n=0; $result = $conn->prepare("SELECT id, name FROM personne WHERE emp_id='$root' ORDER BY name"); $result->execute(); while ($row
orderby
按字母顺序显示结果时,它没有起作用!
下面是我的递归函数:
function tree($root) {
global $conn;
$n=0;
$result = $conn->prepare("SELECT id, name FROM personne WHERE emp_id='$root' ORDER BY name");
$result->execute();
while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
$n = $n+1;
echo "<option value='".$row['id']."'>".$row['name']."</option>";
tree($row['id'], $n+1);
}
}
函数树($root){
全球$conn;
$n=0;
$result=$conn->prepare(“从人员中选择id、名称,其中emp_id='$root'按名称排序”);
$result->execute();
而($row=$result->fetch(PDO::fetch_ASSOC)){
$n=$n+1;
回显“$row['name']”;
树($row['id',$n+1);
}
}
感谢您的帮助您正在使用第二个参数
$n+1
从函数内部调用函数,但是您的函数p.S中没有该参数。什么不起作用?发生了什么事?你期望发生什么事?@elgonzo这是个问题吗?@JonathonHenderson订单不起作用。我得到的是名称,但不是按aplphabetcal顺序传递的。您传递两个参数tree($row['id',$n+1)代码>其中函数仅定义一个