함수에 전달 된 매개 변수를 기반으로 쿼리를 실행하는 함수가 작성되었습니다.PHP PDO 함수의 매개 변수는 배열을 반환했습니다.
내가하고 다음이 결과를 반환 이유를 알아낼 수 없습니다
function test2($function_returned_array)
{
$sql = 'SELECT `name`, `pid`
FROM `products`
WHERE `name` IN (?)';
$found = $this->db->get_array($sql, $function_returned_array[0]);
}
$ function_returned_array [0] 또한이 어떤 결과를 반환하지 않지만
function test($function_returned_array)
{
$variable = 'Hello World';
$sql = 'SELECT `name`, `pid`
FROM `products`
WHERE `name` IN (?)';
$found = $this->db->get_array($sql, $variable);
}
을 'Hello World'와 동일합니다. 그들은 둘 다 같은 결과를 가져야하지 않습니까? 내가 변수 $와 $ function_returned_array의 값을 에코 때
[0], 그들은 둘 '안녕하세요'
여기에 관련 내 PDO 래퍼의 일부입니다 : 내가 사용
public function query(&$query, $params)
{
$sth = $this->_db->prepare($query);
if(is_null($params))
{
$sth->execute();
}
else if(is_array($params))
{
$sth->execute($params);
}
else
{
$sth->execute(array($params));
}
$this->_rows = $sth->rowCount();
$this->_counter++;
return $sth;
}
public function get_array(&$query, $params, $style = PDO::FETCH_ASSOC)
{
$q = $this->query($query, $params);
return $q->fetchAll($style);
}
PHP 5.3.5.
도움을 주시면 감사하겠습니다.
이 코드에는 디버깅이 없습니다. 그리고 낯선 사람에게 정신적으로 그것을 디버그하도록 요청합니다. 나는 그것을 -1하지만 PDO 래퍼를 갖기 위해 그만 두지 마라. -이 "열광적 인 프로그래머"사이트에서 거의 본 적이없는 것 –
미안하지만, 나는 그것이 충분히 명확하다고 생각했다. (나는 편집 할 것이다. – noko
왜 쿼리 문자열을 참조로 전달합니까? – Phil