いくつかのmysqlの結果からphpで作成している単純な配列があります。
配列のデータの例は、配列の var_dump から次のとおりです。
array(1) {
[0]=>
array(8) {
["value1a"]=>
string(2) "26"
["value3a"]=>
string(136) "Curriculum includes NCLEX prep work throughout all degree courses—preparing you to pass the NCLEX-RN exam and become a registered nurse."
["value3b"]=>
string(223) "$150 course fee includes: textbooks, ebooks and CDs, three sets of scrubs, all lab fees, stethoscope, bandage scissors, pen light, and your NCLEX application fee"
["soc_code"]=>
string(10) "29-1141.00"
["soc_title"]=>
string(17) "Registered"
["job_growth"]=>
string(2) "30"
["salary"]=>
string(5) "65950"
["program_name"]=>
string(20) "Professional"
}
}
配列のjson_encodeを実行すると、json_encode($results)
Everythingはうまく機能しますが、value3aの値は1ワード後に途切れます。残りの値は、value3a のように長い value3b を含むすべての値です。
エコーしたときの結果の例を次に示しますjson_encode($results)
[{"value1a":"26","value3a":"Curriculum","value3b":"$150 course fee includes: textbooks, ebooks and CDs...etc
何が原因なのかわからないので、助けていただければ幸いです。value3a の値から最初の単語を削除しようとしましたが、現在は 2 番目の単語である 1 つの単語しかリストされていません。
これは、データを表示するために行っていることなので、配列をエンコードする前に変更されていないことがわかります。
echo "<pre>";
var_dump($results);
echo "</pre>";
echo json_encode($results);