キーを持つ配列を参照テーブルとして使用して、文字列を数値に変換しようとしています。
これは配列です:
$q2_10_lt = array("Full-time worker" => 1
, "Part-time worker" => 2
, "Unemployed, would like to work" => 3
, "Unable to work (chronically ill/mentally handicapped/physically handicapped)" => 4
, "Pensioner/retired" => 5
, "Housewife/husband" => 6
, "Student at university of college (post-matric)" => 7
, "High school learner" => 8
, "Primary school learner" => 9
, "Child attending pre-school/nursery school/crèche/day-mother" => 10
, "Child staying at home" => 11
, "Other" => 12);
問題のキーは「就学前・保育園・託児所・保育士」です。次のコードを使用する場合、このキーは見つかりません。
$person_tempArr[] = $q2_10_lt[$row["q2_10"]] != null ? $q2_10_lt[$row["q2_10"]] : "12";
$person_tempArr[] = $q2_10_lt[$row["q2_10"]] == null ? $row["q2_10"] : "";
値は、$row["q2_10"]
MySQL DB から取得した異なる文字列です。
最初の行から数字の 10 を取得する必要がありますが、代わりに 12 を取得し、文字列全体を変更せずに「子供が就学前/保育園/幼稚園/デイマザー」に通っています。
これは特殊文字èと関係があるに違いありませんが、私はそれを解決できませんでした. 助けてください。
編集1
提案どおりに16進ダンプを実行した後、次の結果が得られました
SQL DB から:
43 68 69 6c 64 20 61 74 74 65 6e 64 69 6e 67 20 70 72 65 2d 73 63 68 6f 6f 6c 2f 6e 75 72 73 65 72 79 20 73 63 68 6f 6f 6c 2f 63 72 e8 63 68 65 2f 64 61 79 2d 6d 6f 74 68 65 72
PHPの文字列から:
43 68 69 6c 64 20 61 74 74 65 6e 64 69 6e 67 20 70 72 65 2d 73 63 68 6f 6f 6c 2f 6e 75 72 73 65 72 79 20 73 63 68 6f 6f 6c 2f 63 72 c3 a8 63 68 65 2f 64 61 79 2d 6d 6f 74 68 65 72
違いは、「E8」と「C3A8」またはDBの「è」とphp文字列の「è」でした。
では、php文字列が「è」のままであることを確認するにはどうすればよいですか?