최근에 나는 잘 작동하는 데 사용되는 lib에 오류가 발생하여 어디 있는지 파악할 수 있으면 망할 것입니다.Mysqli 추상화 준비 문에서 배열 가져 오기
코드 샘플은 아래에 있으며, 그 안에 디버그 내용에 대해 사과드립니다. 그러나 작동 시키려고합니다.
문제는 $ temp가 올바른 키 (열 이름)를 가진 배열이지만 모든 값이 NULL이라는 점입니다.
나는 문제가
call_user_func_array(array($query, 'bind_result'), $params);
비트에있다,하지만 정말 주위에 내 머리를 정리하지 수 있다고 생각합니다.
public function fetchRows(){
error_reporting(E_ALL+E_NOTICE);
$args = func_get_args();
$sql = array_shift($args);
traceVar($sql, "Query");
$colTypes = array_shift($args);
if (!$query = $this->prepare($sql, $colTypes)) {
die('Please check your sql statement : unable to prepare');
}
if (count($args)){
traceVar($args,'Binding params with');
call_user_func_array(array($query,'bindParam'), $args);
}
$query->execute();
$meta = $query->result_metadata();
while ($field = $meta->fetch_field()) {
$params[] = &$row[$field->name];
}
traceVar($params,'Binding results with');
call_user_func_array(array($query, 'bind_result'), $params);
while ($query->fetch()) {
traceVar($row,'After fetch');
$temp = array();
foreach($row as $key => $val) {
$temp[$key] = $val;
}
$result[] = $temp;
}
$meta->free();
$query->close();
//self::close_db_conn();
return $result;
}
http://paste2.org/p/554177과 함께 시도해 보니 매력처럼 작동합니다. 내 원본 코드가 어디에서 고장 났는지 궁금합니다. – Madness
변경 사항을 구현할 때 실수를해야합니다. 함수를 http://paste2.org/p/554194로 다시 작성한 다음 http://paste2.org/p/554192를 실행하면 여전히 "Array ([0] => 배열 ([ID] => [사용자 이름] => [암호] => [이름] => [전자 메일] => [액세스 레벨] => [IsTemp] =>)) " – Madness
모든 사용, 나는 또한 여기 클래스에서 다른 비트를 배치 http://paste2.org/p/554201 – Madness