Bagaimana untuk Mengakses Nama Pembolehubah Dinamik dalam Twig?

Mary-Kate Olsen
Lepaskan: 2024-11-06 05:44:03
asal
955 orang telah melayarinya

How to Access Dynamic Variable Names in Twig?

Mengakses Nama Pembolehubah Dinamik dalam Twig

Apabila bekerja dengan tatasusunan objek dalam Twig, selalunya perlu untuk mengakses pembolehubah dengan nama dinamik. Ini boleh dicapai menggunakan gabungan sintaks templat dan fungsi PHP.

Menggunakan Fungsi Atribut

Untuk mengakses pembolehubah bernama pemegang tempat{n}, dengan n ialah pembolehubah, anda boleh menggunakan fungsi atribut:

{{ attribute(invoices, 'placeholder1') }}
Salin selepas log masuk

Ini akan mengembalikan nilai pembolehubah pemegang tempat1 dalam objek invois semasa.

Menggunakan Tatasusunan Konteks

Sebagai alternatif, anda boleh mengakses nilai secara terus tatasusunan konteks menggunakan tatatanda kurungan:

{{ _context['placeholder' ~ id] }}
Salin selepas log masuk

Pendekatan ini secara umumnya lebih disukai kerana ia lebih ringkas dan lebih jelas. Walau bagaimanapun, ia memerlukan menetapkan pilihan persekitaran strict_variables kepada benar untuk mengelakkan ralat masa jalan apabila mengakses pembolehubah yang tidak wujud.

Menyediakan Nilai Lalai

Jika pilihan strict_variables ditetapkan kepada benar, anda harus menggunakan penapis lalai untuk memberikan nilai lalai bagi pembolehubah tidak wujud:

{{ _context['placeholder' ~ id]|default('Default value') }}
Salin selepas log masuk

Menyemak Kewujudan Pembolehubah

Untuk menyemak sama ada pembolehubah wujud sebelum menggunakannya, anda boleh menggunakan ujian yang ditentukan:

{% if _context['placeholder' ~ id] is defined %} ... {% endif %}
Salin selepas log masuk

Pendekatan ini lebih bertele-tele daripada menggunakan penapis lalai, tetapi ia memberikan kawalan yang lebih eksplisit ke atas pengendalian pengecualian.

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Nama Pembolehubah Dinamik dalam Twig?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!