ホームページ >バックエンド開発 >PHPチュートリアル >PHP Foreach ループ内で配列値を直接変更するにはどうすればよいですか?

PHP Foreach ループ内で配列値を直接変更するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-23 06:43:14149ブラウズ

How Can I Modify Array Values Directly Within a PHP Foreach Loop?

Foreach ループ内の配列値の編集

PHP では、foreach ループを使用して配列を反復処理するときに、現在の値を変更できます。処理中の要素。これにより、反復自体中に配列値を操作できるようになります。

foreach ループ内で現在のオブジェクトを編集するには、2 つの一般的な方法があります。

1.キーの保持の使用

foreach ($questions as $key => $question) {
    $questions[$key]['answers'] = $answers_model->get_answers_by_question_id($question['question_id']);
}

このアプローチでは、$key => を利用して配列キーを保持します。 $質問。これにより、メインの $questions 変数内の関連要素を更新できるようになります。

2.参照割り当ての使用

foreach ($questions as &$question) {
    $question['answers'] = $answers_model->get_answers_by_question_id($question['question_id']);
}

ここで、$question の前にある & は参照割り当てを示します。これは、ループ内の $question 変数が配列要素を直接変更することを意味します。

PHP ドキュメントによると、「ループ内で配列要素を直接変更できるようにするには、$value の前に & を付けます。この場合、値は参照によって割り当てられます。"

以上がPHP Foreach ループ内で配列値を直接変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。