내 배열을 json_encode로하려고하는데 데이터 소스를위한 jQuery 플러그인 안에 배치 할 수 있도록 돌아왔다. 내 문제는 배열을 다시 가져 오기 위해 데이터베이스를 쿼리하기 위해 PDO를 사용하고 있지만 print_r을 수행하면 데이터베이스에서 돌아 오는 모든 이름이 자체 배열에 있음을 알 수 있습니다. 어떻게 모든 json_encode 할 때 jQuery 플러그인에 대한 하나의 문자열을 읽을 수 있도록 이러한 모든 결과를 단일 배열로 배치 할 것이라고?JSON 인코딩을위한 Unify 배열?
데이터베이스 쿼리 (PDO) - 일시 반환되는 배열의
$query = "
SELECT name
FROM `clients`
";
try
{
$stmt = $b3->prepare($query);
$stmt->execute();
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
$players = $stmt->fetchAll();
예 (I 8000이 참고 그래서에만 게시 할 예정입니다 반환하기 처음 5 정도)
print_r($players);
Array
(
[0] => Array
(
[name] => ! CBC.ZXR
)
[1] => Array
(
[name] => ! marioxz
)
[2] => Array
(
[name] => ! V v :]
)
[3] => Array
(
[name] => !?!
)
[4] => Array
(
[name] => !CU @ 1337
)
다소 복잡해지기 때문에 배열을 어떻게 통합 할 수 있습니까?
json_encode($players["name"]);
위에서 언급 한 이름의 단일 JSON 문자열을 반환합니다.
편집
현재 코드,
$query = "
SELECT name
FROM `clients`
";
try
{
$stmt = $b3->prepare($query);
$stmt->execute();
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
$playerNames = $stmt->fetchAll(PDO::FETCH_COLUMN, 0);
json_encode($playerNames);
var_dump(json_last_error());
'json_encode' _returns_ 값은 인수를 변형하지 않습니다. 이 값을 저장하고 ('$ playerNamesJson = json_encode ($ playerNames);') 그리고/또는 그것을 echo합니다. 바로 지금 당신은 그 결과를 버리고 있습니다. – raina77ow
@ raina77ow이 작업을 수행했지만 정상적인 JSON 문자열이 아닙니다. http://gophobia.com/beta/ajaxSearch.php –
하지만 분명히 그렇습니다. 표시된 페이지가 아닌 소스를 확인하십시오. [json validator] (http://jsonlint.com/)에서 내용을 확인하십시오. – raina77ow