Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk membuat tatasusunan bermula dari 1 dalam php

Bagaimana untuk membuat tatasusunan bermula dari 1 dalam php

PHPz
PHPzasal
2023-04-20 15:01:56833semak imbas

Tatasusunan PHP diindeks daripada 0 secara lalai, tetapi dalam beberapa kes, kita perlu mengindeks tatasusunan daripada 1. Artikel ini akan memperkenalkan cara untuk melakukannya.

Menggunakan tatasusunan dalam PHP

Dalam PHP, tatasusunan ialah jenis data yang sangat biasa. Tatasusunan boleh menyimpan sebarang bilangan nilai dan dirujuk menggunakan pasangan nilai kunci.

Sebagai contoh, berikut ialah tatasusunan yang diindeks menggunakan lalai 0:

$myArray = array('apple', 'banana', 'orange');
echo $myArray[0]; // 输出: apple

Tetapi kadangkala, kita perlu mengindeks tatasusunan bermula dari 1, seperti ini:

$myArray = array(1=>'apple', 2=>'banana', 3=>'orange');
echo $myArray[1]; // 输出: apple

Biar tatasusunan bermula dari 1

Pertama, kita boleh menggunakan fungsi array_combine() untuk menggabungkan tatasusunan baharu dengan tatasusunan sedia ada yang diindeks daripada 0:

$oldArray = array('apple', 'banana', 'orange');
$newArray = range(1, count($oldArray)); // 生成从1到n的序列
$myArray = array_combine($newArray, $oldArray);

echo $myArray[1]; // 输出: apple

Above In kod tersebut, selepas menggunakan fungsi julat() untuk menjana jujukan daripada 1 hingga n (iaitu, panjang tatasusunan), anda boleh menggunakan fungsi array_combine() untuk menggabungkan jujukan dengan tatasusunan asal untuk menjana tatasusunan baharu.

Terdapat juga cara untuk menjadikan tatasusunan bermula dari 1, iaitu menggunakan fungsi pembalikan tatasusunan array_reverse() dan fungsi pengindeksan semula tatasusunan array_values():

$oldArray = array('apple', 'banana', 'orange');
$newArray = array_reverse($oldArray); // 反转原始数组
$newArray = array_values($newArray); // 重新索引新的数组
$myArray = array_combine(range(1, count($oldArray)), $newArray);

echo $myArray[1]; // 输出: apple

Dalam kes ini, kami menggunakan fungsi array_reverse() untuk menterbalikkan tatasusunan asal dahulu, kemudian gunakan fungsi array_values() untuk mengindeks semula tatasusunan baharu, dan akhirnya menggunakan fungsi array_combine() untuk menggabungkan jujukan dengan tatasusunan baharu.

Ringkasan

Terdapat beberapa cara untuk menjadikan tatasusunan bermula dari 1, termasuk menggunakan fungsi julat(), menggunakan fungsi array_reverse() dan array_values(), menggunakan fungsi array_combine() , dsb. Walau apa pun, ini boleh dicapai dengan mudah.

Akhir sekali, perlu diingat bahawa apabila menukar tatasusunan daripada 0 kepada 1 untuk pengindeksan, ia mungkin menyebabkan beberapa masalah Sebagai contoh, sesetengah kod dijangka bermula dari 0 dan mungkin juga perlu diubah suai. Oleh itu, akibatnya perlu dipertimbangkan dengan teliti apabila menggunakan pendekatan ini.

Atas ialah kandungan terperinci Bagaimana untuk membuat tatasusunan bermula dari 1 dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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