スリムフレームワークを使用して、データベースからすべてのアカウントを取得するためのルートを含むAPIを作成しています。私はjsonで口座のリストを返そうとしますが、最後の2文字は削除され、無効なJsonになります。}で終わると予想されるためです。なぜそれがそれをやっているのか、それをどう解決するのか分かりません。SlimはJsonストリングの最後の2文字を削除します
<?php
header("Content-Type: application/json;charset=utf-8");
class Account {
public function getAll(){
$db_connection = new Connection();
$conn = $db_connection->getConnection();
$result = $conn->query("SELECT * from accounts");
$numrows = $result->rowCount();
if ($numrows > 0) {
$rowset = $result->fetchAll(PDO::FETCH_ASSOC);
}
else {
$message['Error'] = 'No Account found';
$rowset = $message;
}
return $rowset;
}
}
私はあなたがPHPタグのいくつかの空白の外側を持っている
$app->get('/Account/GetAll', function($request, $response, $args) use ($app){
$application = new Account();
return $response->withJSON($application->getAll());
});
'$ numrows = $ result-> rowCount(); $ rowset = array(); if($ numrows> 0){ $ rowset [] = $ result-> fetchAll(PDO :: FETCH_ASSOC); } else { $ message ['Error'] = 'アカウントが見つかりません'; $ rowset = $ message; } return $ rowset; '一度だけチェック –
@Anantこれを試しましたが、それでも動作しませんでした。 –
文字の制限に基づいているようです。アカウントの制限13から*を選択すると、9225文字の有効なjsonが返されます。すべての列を1つずつリミット14でリストすると、9587文字が得られます。私は2列を引いて限界を増やす15私は9502文字を得る。マイナス5列私は9401文字に限界17を得ます。私は9506文字に19マイナス7列を制限しています。それらのそれぞれは、私が限界に1を加えれば、それはエラーの悪い文字列を投げる。解決策があれば教えてください。 –