-1

コードを遵守する

if($line[$x]==1 and !empty($cat_ids[$x]))
    array_push($cat1,$cat_ids[$x]);
    elseif($line[$x]==1 and $cat_ids[$x]="")
    array_push($cat1,"id not allocated");

$line[$x]1を$cat_ids[$x]含み、IDを含みます。

idが空の場合、その特定の配列に「idnotassigned」をプッシュしたいと思い$line[$x]ます。私を助けてください...

私が書いたコードは、「idnotassigned」を出力する代わりに空のフィールドをスキップしています

4

2 に答える 2

1

変更してみる

elseif($line[$x]==1 and $cat_ids[$x]="")

elseif($line[$x]==1 and $cat_ids[$x]=="")

as$cat_ids[$x]=""ステートメントは値 null を割り当てます$cat_ids[$x]

于 2012-10-17T11:27:02.873 に答える
0

最初に決定の結果を保存し、次にその結果に基づいて新しい値を割り当てます。

$filled = ($line[$x] == 1 and !empty($cat_ids[$x]));
$cat1[] = $filled ? $cat_ids[$x] : "id not allocated";

これは変数に保存されるため、これも簡単にデバッグできます。

$filled = ($line[$x] == 1 and !empty($cat_ids[$x]));
var_dump($filled);
$cat1[] = $filled ? $cat_ids[$x] : "id not allocated";

そのため、コードが実際に期待どおりに機能するかどうかをよりよく確認できます。

于 2012-10-17T11:32:17.967 に答える