Pengajar. [0. 00] Saatnya untuk akhirnya mulai membangun postingan kita menjadi sebuah array. Saat membuat prototipe di aplikasi, umum untuk elemen kode keras sehingga Anda bisa memindahkan semuanya tanpa bergantung pada koneksi database. Kami akan melakukan ini hanya dengan posting kami. [0. 16] Pertama, kami akan menghapus variabel tag kami, karena ini nantinya akan diturunkan dari data posting kami. Kami juga dapat menghapus variabel hasPost karena saat ini kami tidak menggunakannya. Mari buat variabel post baru, dan kita akan menugaskannya ke array kosong
[0. 36] Untuk saat ini, ini hanya berisi info untuk satu postingan blog. Kami akan menjaga hal-hal sederhana dan hanya memiliki dua properti untuk postingan blog kami -- judul dan konten. Kami akan menyimpan masing-masing dalam penetapan nilai kuncinya sendiri
[0. 52] Mari kita atur indeks judul baru. Kami akan, sekali lagi, menggunakan simbol tanda => seperti kami dalam pernyataan foreach. Kemudian kita akan menentukan nilai indeks ini, yang hanya akan menjadi "Cara Belajar PHP. "Kemudian kita akan mengetik koma dan kemudian menentukan konten indeks kedua kita. Ini akan menjadi konten utama blog kita. Untuk saat ini, kami hanya akan menetapkan ini sama dengan "Beginilah Cara Anda Belajar PHP. "
[1. 24] Daripada menggunakan foreach loop, kita juga bisa langsung menampilkan konten dari array menggunakan apa yang disebut notasi braket. Daripada menggunakan pernyataan foreach ini, mari kita lanjutkan dan hapus saja ini. Kami akan menggantinya dengan
menandai
[1. 40] Di dalam sini, mari kita echo variabel post. Setelah posting, kita akan menempelkan braket kiri dan kanan, dan kemudian kita dapat memanggil judul sebagai string. Memanggil array seperti ini mengacu pada nilai untuk judul, yaitu "Cara Belajar PHP. " Kami dapat melakukan hal yang sama untuk konten, dan kami hanya akan menampilkannya dalam a
menandai
[2. 09] Saat menyimpan file ini dan menyegarkan, kita akan melihat judul yang ditampilkan serta kontennya
Kode berikut menunjukkan cara menambahkan pasangan nilai kunci baru ke array asosiatif
//from w w w . j av a 2 s.c o m Adding Author Names "A Book", "authorId" => 2, "pubYear" => 1937 ), array( "title" => "B Book", "authorId" => 0, "pubYear" => 1939 ), array( "title" => "C Book", "authorId" => 3, "pubYear" => 1859 ), array( "title" => "D Book", "authorId" => 4, "pubYear" => 1667 ), array( "title" => "E Book", "authorId" => 5, "pubYear" => 1945 ), array( "title" => "F Book", "authorId" => 1, "pubYear" => 1925 ), ); foreach ( $books as &$book ) { $book["authorName"] = $authors[$book["authorId"]]; } echo ""; print_r( $books ); echo "";
Kode di atas menghasilkan hasil berikut
Kami akan melihat metode untuk mendorong kunci dan nilai yang sesuai ke array PHP menggunakan metode inisialisasi array braket persegi
Kita akan melihat berbagai cara untuk mendorong kunci dan nilai yang sesuai ke array PHP menggunakan metode Array ( [name] => Kevin Amayi ) 2, array Array ( [name] => Kevin Amayi ) 3, operator penugasan majemuk, metode Array ( [name] => Kevin Amayi ) 4 dan metode Array ( [name] => Kevin Amayi ) 5
Dorong Kunci dan Nilai ke Array PHP Menggunakan Metode Inisialisasi Array Braket Persegi
Kami akan menginisialisasi array kosong kemudian menambahkan pasangan kunci-nilai ke inisialisasi tanda kurung siku
Keluaran
Array ( [name] => Kevin Amayi ) _
Dorong Kunci dan Nilai ke PHP Array Menggunakan Array Array ( [name] => Kevin Amayi ) 3
Kami akan menginisialisasi array dengan kunci dan nilai yang sesuai menggunakan array Array ( [name] => Kevin Amayi ) 3
"Kevin","lastname" => "Amayi"); print_r($array_test); ?> _
Keluaran
Array ( [firstname] => Kevin [lastname] => Amayi )
Dorong Kunci dan Nilai ke Array PHP Menggunakan Metode Array ( [name] => Kevin Amayi ) 2
Kami akan langsung menginisialisasi array dengan dua nilai kemudian menggunakan metode Array ( [name] => Kevin Amayi ) 5 untuk menambahkan nilai baru dengan kunci yang sesuai
I did a performance check, and I saw, if you push more than one value it can be faster the array push, that the normal $array[] version.
Case 1: $array[] = something;
Case 2: array_push($array, $value);
Case 3: array_push($array, $value1, $value2, $value3 [...]); $values are definied
Case 4: array_push($array, $value1, $value2, $value3 [...]); $values are definied, when $array is not empty
Case 5: Case1 + Case 3
Case 6: Result array contains some value (Case 4)
Case 7: Result array contains same value as the push array (Case 4)
-----------------------------------------------------------------------------------------------------------
~~~~~~~~~~~~ Case 1 ~~~~~~~~~~~~
Times: 0.0310 0.0300 0.0290 0.0340 0.0400 0.0440 0.0480 0.0550 0.0570 0.0570
Min: 0.0290
Max: 0.0570
Avg: 0.0425
~~~~~~~~~~~~ Case 2 ~~~~~~~~~~~~
Times: 0.3890 0.3850 0.3770 0.4110 0.4020 0.3980 0.4020 0.4060 0.4130 0.4200
Min: 0.3770
Max: 0.4200
Avg: 0.4003
~~~~~~~~~~~~ Case 3 ~~~~~~~~~~~~
Times: 0.0200 0.0220 0.0240 0.0340 0.0360 0.0410 0.0460 0.0500 0.0520 0.0520
Min: 0.0200
Max: 0.0520
Avg: 0.0377
~~~~~~~~~~~~ Case 4 ~~~~~~~~~~~~
Times: 0.0200 0.0250 0.0230 0.0260 0.0330 0.0390 0.0460 0.0510 0.0520 0.0520
Min: 0.0200
Max: 0.0520
Avg: 0.0367
~~~~~~~~~~~~ Case 5 ~~~~~~~~~~~~
Times: 0.0260 0.0250 0.0370 0.0360 0.0390 0.0440 0.0510 0.0520 0.0530 0.0560
Min: 0.0250
Max: 0.0560
Avg: 0.0419
~~~~~~~~~~~~ Case 6 ~~~~~~~~~~~~
Times: 0.0340 0.0280 0.0370 0.0410 0.0450 0.0480 0.0560 0.0580 0.0580 0.0570
Min: 0.0280
Max: 0.0580
Avg: 0.0462
~~~~~~~~~~~~ Case 7 ~~~~~~~~~~~~
Times: 0.0290 0.0270 0.0350 0.0410 0.0430 0.0470 0.0540 0.0540 0.0550 0.0550
Min: 0.0270
Max: 0.0550
Avg: 0.044
Tester code:
// Case 1
$startTime = microtime(true);
$array = array();
for ($x = 1; $x <= 100000; $x++)
{
$array[] = $x;
}
$endTime = microtime(true);
// Case 2
$startTime = microtime(true);
$array = array();
for ($x = 1; $x <= 100000; $x++)
{
array_push($array, $x);
}
$endTime = microtime(true);
// Case 3
$result = array();
$array2 = array(&$result)+$array;
$startTime = microtime(true);
call_user_func_array("array_push", $array2);
$endTime = microtime(true);
// Case 4
$result = array();
for ($x = 1; $x <= 100000; $x++)
{
$result[] = $x;
}
$array2 = array(&$result)+$array;
$startTime = microtime(true);
call_user_func_array("array_push", $array2);
$endTime = microtime(true);
// Case 5
$result = array();
$startTime = microtime(true);
$array = array(&$result);
for ($x = 1; $x <= 100000; $x++)
{
$array[] = $x;
}
$endTime = microtime(true);
// Case 6
$result = array(1,2,3,4,5,6);
$startTime = microtime(true);
$array = array(&$result);
for ($x = 1; $x <= 100000; $x++)
{
$array[] = $x;
}
$endTime = microtime(true);
// Case 7
$result = array();
for ($x = 1; $x <= 100000; $x++)
{
$result[] = $x;
}
$startTime = microtime(true);
$array = array(&$result);
for ($x = 1; $x <= 100000; $x++)
{
$array[] = $x;
}
$endTime = microtime(true);