入力ファイルを以下のフォームで操作できる一連のオブジェクトに変換しようとしています。初期化後にPHPクラスの値にアクセスできない
arabian_sea_area = {
1926 1927 1931 1932 1933 2029 2030
}
gulf_of_aden_sea_area = {
1925 2024 5285 5286
}
自衛隊
<?php
$all_areas = array();
if (($handle = fopen("area.txt", "r")) == False)
{
die("failed to open file\n");
}
while (($line = fgets($handle)) !== FALSE)
{
if (ctype_alpha($line[0]))
{
$line= explode(" ",$line);
// echo($line[0]."\n");
$area = $line[0];
$IDs = explode(" ", fgets($handle));
$IDs[0] = ltrim($IDs[0], ' '); // trying to remove tab from first ID
$all_areas[$area] = $IDs;
//array_push($all_areas, $temp);
}
}
//echo("a\n");
print_r($all_areas["arabian_sea_area"]);
//var_dump ($all_areas);
?>
値はコメントアウトデバッグ行に正しく印刷されますが最後でのvar_dumpのために何を印刷に失敗。
編集:これは不明で、私がしようとしていたのは最初の行(つまりarabian_sea_areaなど)というタイトルのオブジェクトにリンクされたマスター "all_areas"配列を作成し、後のスクリプトのために各エリアごとにアルゴリズム的に計算されます。あなたは$の一時変数を作成している
の1-
if (ctype_alpha($line[0]))
{
$line= explode(" ",$line);
//echo($line[0]."\n");
$temp = $line[0];
$temp = new Area;
$temp->filler($line, $handle);
}
いますが、メインの配列$ all_areasにプッシュするのを忘れ:
詳細を追加して、必要なものを正確に強調してください。現在書かれているとおり、あなたが求めていることを正確に伝えるのは難しいです。この質問を明らかにするには、[How to Ask](http://stackoverflow.com/help/how-to-ask)ページを参照してください。 – Script47