Hy 아래 코드가 있으며 함수로 값 배열을 반환하고 싶습니다.
<?php
include "config/koneksi.php";
//script1
$fetch1 = mysqli_query($conn, "SELECT * FROM orders_temp");
$array = array();
while($row = mysqli_fetch_assoc($fetch1)){
$array[] = $row[id_orders_temp];
}
echo "script1: ";
print_r($array);
echo "<br>";
//script2
function cart(){
$array1= array();
$fetch2 = mysqli_query($conn,"SELECT * FROM orders_temp");
while ($r=mysqli_fetch_assoc($fetch2)) {
$array1[] = $r[id_orders_temp];
}
return $array1;
}
$cart1 = cart();
echo "script2 : ";
print_r($cart1);
?>
결과 :
script1: Array ( [0] => 150 [1] => 151 )
script2 : Array ( )
함수없이 print_r 배열을 인쇄해도 문제가 없지만 위와 같이 함수를 사용하면 빈 array ()가 나옵니다. 함수로 배열 값을 어떻게 얻을 수 있습니까?
변수 $conn
는 함수 내에 정의되어 있지 않으므로 함수에 전달하거나 전역 적으로 사용 가능한를 참조해야합니다 $conn
.
$conn
include "config/koneksi.php";
function cart($conn) {
$identifiers = array();
$result = mysqli_query($conn, 'SELECT id_orders_temp FROM orders_temp');
while ($row = mysqli_fetch_assoc($result)) {
$identifiers[] = $row['id_orders_temp'];
}
return $identifiers;
}
$cart = cart($conn);
var_dump($cart);
$conn
이상적으로는 전역 상태 (및 액세스)를 제한해야하므로 권장하지 않습니다.
include "config/koneksi.php";
function cart() {
global $conn;
$identifiers = array();
$result = mysqli_query($conn, 'SELECT id_orders_temp FROM orders_temp');
while ($row = mysqli_fetch_assoc($result)) {
$identifiers[] = $row['id_orders_temp'];
}
return $identifiers;
}
$cart = cart();
var_dump($cart);
참고cart()
실제로 필요한 열만 선택하도록 내에서 변수 이름을 바꾸고 SQL 쿼리를 최적화했습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다