猿问

是否有理由用自己的元素之一覆盖数组变量?

我最近“继承”了一个使用mySQL数据库作为其后端一部分的PHP Web应用程序。在遍历代码时,我遇到了一个完全使我困惑的块。


$results = array();

$results[] = $mysqli_result->fetch_array();

$results = $results[0];


return $results;

因此,我知道前两行正在初始化一个空数组,并将先前查询的第一行结果分配给该新数组。但是第三行对我来说没有意义。据我了解,一次fetch_array()只能抓一排;我想不出任何理由$results = $results[0];排队。我能想到的最好的是它是何时mysql_result被删除的剩余代码。


有任何理由要使用第三行吗?


慕容3067478
浏览 134回答 1
1回答

慕森王

不,没有理由。这仅仅是“货物崇拜代码”的一个例子。当您不知道如何正确执行某项操作时,只需复制/粘贴一些现有代码,而不真正了解是否有必要。当然,创建一个数组,然后在该数组中创建一个新元素,然后使用第一个元素重新分配此数组变量是没有意义的。相反,只需分配一个变量:$result = $mysqli_result->fetch_array();或者-更好-由于此变量在赋值后立即返回,因此只需立即将其返回,因为该$result变量将不会在其他任何地方使用。return $mysqli_result->fetch_array();
随时随地看视频慕课网APP
我要回答