Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menyiarkan Tatasusunan Berbilang Dimensi Dengan Berkesan Menggunakan PHP dan CURL?

Bagaimana untuk Menyiarkan Tatasusunan Berbilang Dimensi Dengan Berkesan Menggunakan PHP dan CURL?

Susan Sarandon
Lepaskan: 2024-10-23 08:18:29
asal
724 orang telah melayarinya

How to Post Multidimensional Arrays Effectively Using PHP and CURL?

Menyiarkan Tatasusunan Berbilang Dimensi Menggunakan PHP dan CURL

Dalam pembangunan web, senario mungkin timbul di mana anda perlu menyerahkan data borang yang mengandungi tatasusunan berbilang dimensi kepada skrip jauh melalui CURL. Walau bagaimanapun, tugasan ini boleh memberikan cabaran disebabkan oleh pengehadan dalam pengendalian tatasusunan berbilang dimensi oleh CURL.

Untuk mengatasinya, pertimbangkan penyelesaian berikut:

Menukar Tatasusunan kepada Format yang Sesuai

Inti isu ini terletak pada keperluan untuk mengekalkan pengepala Jenis Kandungan berbilang bahagian/borang-data semasa menghantar fail bersama-sama dengan data borang. Keperluan ini mengehadkan penggunaan rentetan pertanyaan atau fungsi http_build_query().

Untuk mengatasi pengehadan ini, kami boleh menggunakan fungsi tersuai yang dipanggil http_build_query_for_curl. Fungsi ini merentasi tatasusunan berbilang dimensi secara rekursif, menukarnya kepada format yang serasi dengan parameter CURLOPT_POSTFIELDS CURL.

Contoh Pelaksanaan

Contoh pelaksanaan fungsi http_build_query_for_curl disediakan di bawah:

Dengan memanfaatkan fungsi ini, anda boleh menyiarkan tatasusunan berbilang dimensi dengan berkesan melalui CURL sambil mengekalkan pengepala Jenis Kandungan yang diperlukan.
<code class="php">function http_build_query_for_curl( $arrays, &amp;$new = array(), $prefix = null ) {

    if ( is_object( $arrays ) ) {
        $arrays = get_object_vars( $arrays );
    }

    foreach ( $arrays AS $key => $value ) {
        $k = isset( $prefix ) ? $prefix . '[' . $key . ']' : $key;
        if ( is_array( $value ) OR is_object( $value )  ) {
            http_build_query_for_curl( $value, $new, $k );
        } else {
            $new[$k] = $value;
        }
    }
}

$arrays = array(
    'name' => array(
        'first' => array(
            'Natali', 'Yura'
        )
    )
);


http_build_query_for_curl( $arrays, $post );

print_r($post);</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menyiarkan Tatasusunan Berbilang Dimensi Dengan Berkesan Menggunakan PHP dan CURL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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