Lưu trữ dữ liệu trong các mảng
Lưu trữ một giá trị trong một mảng sẽ tạo ra mảng nếu nó đã không tồn tại, nhưng cố gắng lấy một giá trị từ một mảng đã được xác định nhưng đã giành được tạo ra mảng. Ví dụ:
// $addresses not defined before this point echo $addresses[0]; // prints nothing echo $addresses; // prints nothing $addresses[0] = ''; echo $addresses; // prints "Array"
Sử dụng gán đơn giản để khởi tạo một mảng trong chương trình của bạn dẫn đến mã như sau:
$addresses[0] = ''; $addresses[1] = ''; $addresses[2] = ''; // ...
Đó là một mảng được lập chỉ mục, với các chỉ mục số nguyên bắt đầu từ 0. Đây là một mảng kết hợp:
$price['Gasket'] = 15.29; $price['Wheel'] = 75.25; $price['Tire'] = 50.00; // ...
Một cách dễ dàng hơn để khởi tạo một mảng là sử dụng cấu trúc
$price['Gasket'] = 15.29; $price['Wheel'] = 75.25; $price['Tire'] = 50.00; // ...1, xây dựng một mảng từ các đối số của nó:
$addresses = array['', '', ''];
Để tạo một mảng kết hợp với
$price['Gasket'] = 15.29; $price['Wheel'] = 75.25; $price['Tire'] = 50.00; // ...1, hãy sử dụng ký hiệu
$price['Gasket'] = 15.29; $price['Wheel'] = 75.25; $price['Tire'] = 50.00; // ...3 để tách các chỉ mục khỏi các giá trị:
$price = array['Gasket' => 15.29, 'Wheel' => 75.25, 'Tire' => 50.00];
Lưu ý việc sử dụng khoảng trắng và căn chỉnh. Chúng tôi có thể đã kết hợp mã, nhưng nó sẽ dễ đọc như vậy:
$price = array['Gasket'=>15.29,'Wheel'=>75.25,'Tire'=>50.00];
Để xây dựng một mảng trống, không có đối số nào cho
$price['Gasket'] = 15.29; $price['Wheel'] = 75.25; $price['Tire'] = 50.00; // ...1:
$addresses = array[ ];
Bạn có thể chỉ định một khóa ban đầu với
$price['Gasket'] = 15.29; $price['Wheel'] = 75.25; $price['Tire'] = 50.00; // ...3 và sau đó là danh sách các giá trị. Các giá trị được chèn vào ...
5.3. Lưu trữ dữ liệu trong các mảng
Lưu trữ một giá trị trong một mảng sẽ tạo ra mảng nếu nó chưa tồn tại, nhưng cố gắng lấy một giá trị từ một mảng chưa được xác định nhưng sẽ không tạo ra mảng. Ví dụ:
// $addresses not defined before this point echo $addresses[0]; // prints nothing echo $addresses; // prints nothing $addresses[0] = ''; echo $addresses; // prints "Array"
Sử dụng gán đơn giản để khởi tạo một mảng trong chương trình của bạn dẫn đến mã như sau:
$addresses[0] = ''; $addresses[1] = ''; $addresses[2] = ''; // ...
Đó là một mảng được lập chỉ mục, với các chỉ mục số nguyên bắt đầu từ 0. Đây là một mảng kết hợp:
$price['Gasket'] = 15.29; $price['Wheel'] = 75.25; $price['Tire'] = 50.00; // ...
Một cách dễ dàng hơn để khởi tạo một mảng là sử dụng cấu trúc mảng [], xây dựng một mảng từ các đối số của nó:
$addresses = array['', '', ''];
Để tạo một mảng kết hợp với mảng [], hãy sử dụng ký hiệu => để tách các chỉ mục khỏi các giá trị:
$price = array['Gasket' => 15.29, 'Wheel' => 75.25, 'Tire' => 50.00];
Lưu ý việc sử dụng khoảng trắng và căn chỉnh. Chúng tôi có thể đã kết hợp mã, nhưng nó sẽ không dễ đọc như vậy:
$price = array['Gasket'=>15.29,'Wheel'=>75.25,'Tire'=>50.00];
Để xây dựng một mảng trống, không có đối số nào cho mảng []:
$addresses[0] = ''; $addresses[1] = ''; $addresses[2] = ''; // ...3
Bạn có thể chỉ định khóa ban đầu với => và sau đó là danh sách các giá trị. Các giá trị được chèn vào mảng bắt đầu bằng khóa đó, với các giá trị tiếp theo có các khóa tuần tự:
$addresses[0] = ''; $addresses[1] = ''; $addresses[2] = ''; // ...4
Nếu chỉ mục ban đầu là một chuỗi không phải là số, các chỉ mục tiếp theo là số nguyên bắt đầu ở 0. Do đó, mã sau đây có lẽ là một sai lầm:
$addresses[0] = ''; $addresses[1] = ''; $addresses[2] = ''; // ...5
5.3.2. Gán một phạm vi giá trị
Hàm phạm vi [] tạo ra một mảng số nguyên liên tiếp hoặc giá trị ký tự giữa hai giá trị bạn chuyển cho nó dưới dạng đối số. Ví dụ:
$addresses[0] = ''; $addresses[1] = ''; $addresses[2] = ''; // ...6
Chỉ chữ cái đầu tiên của đối số chuỗi được sử dụng để xây dựng phạm vi:
$addresses[0] = ''; $addresses[1] = ''; $addresses[2] = ''; // ...7
5.3.4. Đệm một mảng
Để tạo một mảng được khởi tạo thành cùng một giá trị, hãy sử dụng Array_Pad []. Đối số đầu tiên của Array_Pad [] là mảng, đối số thứ hai là số lượng phần tử tối thiểu bạn muốn mảng có và đối số thứ ba là giá trị đưa ra bất kỳ phần tử nào được tạo. Hàm mảng_pad [] trả về một mảng đệm mới, để lại mảng đối số của nó một mình.
Đây là mảng_pad [] trong hành động:
$addresses[0] = ''; $addresses[1] = ''; $addresses[2] = ''; // ...8
Lưu ý cách các giá trị mới được nối vào cuối mảng. Nếu bạn muốn các giá trị mới được thêm vào đầu mảng, hãy sử dụng đối số thứ hai âm:
$addresses[0] = ''; $addresses[1] = ''; $addresses[2] = ''; // ...9
Gán kết quả của Array_Pad [] trở lại mảng ban đầu để có được hiệu ứng của một thay đổi tại chỗ:
$price['Gasket'] = 15.29; $price['Wheel'] = 75.25; $price['Tire'] = 50.00; // ...0
Nếu bạn đệm một mảng kết hợp, các khóa hiện tại sẽ được bảo tồn. Các yếu tố mới sẽ có các khóa số bắt đầu từ 0.
Bản quyền © 2003 O'Reilly & Associates. Đã đăng ký Bản quyền.