PHP là ngôn ngữ kịch bản máy chủ và là công cụ mạnh mẽ để tạo các trang Web động và tương tác
PHP là một giải pháp thay thế được sử dụng rộng rãi, miễn phí và hiệu quả cho các đối thủ cạnh tranh như ASP của Microsoft
Bắt đầu học PHP ngay bây giờ »Học dễ dàng với "PHP Tryit"
Với trình chỉnh sửa "PHP Tryit" trực tuyến của chúng tôi, bạn có thể chỉnh sửa mã PHP và nhấp vào nút để xem kết quả
Ví dụ
echo "Tập lệnh PHP đầu tiên của tôi. ";
?>
Nhấp vào nút "Tự dùng thử" để xem nó hoạt động như thế nào
Bài tập PHP
Kiểm tra bản thân với các bài tập
Tập thể dục
Chèn phần còn thiếu của mã bên dưới để xuất "Xin chào thế giới"
Cung cấp câu trả lời "
Ví dụ PHP
Tìm hiểu bằng các ví dụ. Hướng dẫn này bổ sung tất cả các giải thích với các ví dụ rõ ràng
Xem tất cả các ví dụ về PHP
Bài kiểm tra PHP
Học bằng cách làm bài kiểm tra. Bài kiểm tra này sẽ cung cấp cho bạn tín hiệu về mức độ bạn biết hoặc không biết về PHP
Bắt đầu bài kiểm tra PHP
Việc học của tôi
Theo dõi tiến trình của bạn với chương trình "Học tập của tôi" miễn phí tại W3Schools
Đăng nhập vào tài khoản của bạn và bắt đầu kiếm điểm
Đây là một tính năng tùy chọn. Bạn có thể học W3Schools mà không cần sử dụng My Learning
Tài liệu tham khảo PHP
Tài liệu tham khảo PHP của W3Schools chứa các danh mục khác nhau của tất cả các hàm, từ khóa và hằng số PHP, cùng với các ví dụ
Mảng đa chiều
Trong mảng có chứa nhiều mảng con
Cách tạo mảng đa chiều
Đây là cách tạo mảng dạng 2 chiều, có thể cấu hình như sau
$hocweb = array[ array["HTML","1 tuần", "dễ học"], array["CSS","2 tuần", "dễ học"], array["JS","5 tuần", "hơi khó học"], array["PHP","3 tuần", "siêng thì được"] ]; ?>
Cách gọi giá trị mảng đa chiều
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "
"; } ?>
HTML 1 tuần dễ học
CSS 2 tuần dễ học
JS 5 tuần hơi khó học
PHP 3
With a array bao nhieu thứ tự, ta used aruptifiers loop
If array con has the same section tử, thì chiều dài của mảng con bất kỳ chính là chiều dài của các mảng con còn lại
Trường hợp nếu mảng con có số phần tử khác nhau, thì tất nhiên sẽ sử dụng vòng lặp sẽ khác nhau
Cách gọi giá trị đơn
echo $hocweb[0][0]." ".$hocweb[0][1]." ".$hocweb[0][2]; ?>
[0][0]
start up the first column value.
______7 start with the first column value.
______8 start on the first column value.
Nếu nhiều hơn 1 giá trị trùng nhau,
array_push[$hocweb, "JS", "PHP"]; // Xuất mảng ra trình duyệt xem kết quả $length = count[$hocweb]; for[$i = 0; $i < $length; $i++] { echo $hocweb[$i]."8 sẽ giữ lại giá trị ban đầu và loại bỏ các giá trị còn lại
"; } ?>
Lưu ý rằng khóa cũng bị xóa tương ứng với giá trị bị xóa, do đó không được sử dụng để liệt kê các phần tử mảng sau khi sử dụng
array_push[$hocweb, "JS", "PHP"]; // Xuất mảng ra trình duyệt xem kết quả $length = count[$hocweb]; for[$i = 0; $i < $length; $i++] { echo $hocweb[$i]."8 được, vì khóa sẽ bị thiếu
"; } ?>
file_get_contents[] là cách ưu tiên để đọc nội dung của tệp thành chuỗi. Nó sẽ sử dụng các kỹ thuật lập bản đồ bộ nhớ nếu được hệ điều hành của bạn hỗ trợ để nâng cao hiệu suất
Ghi chú
Nếu bạn đang mở một URI có ký tự đặc biệt, chẳng hạn như dấu cách, bạn cần mã hóa URI bằng urlencode[]
Thông số
filename
Tên file cần đọc
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "00
"; } ?>
Ghi chú
Hằng số
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "01 có thể được sử dụng để kích hoạt tìm kiếm đường dẫn bao gồm. Điều này là không thể nếu kiểu gõ nghiêm ngặt được bật, vì
"; } ?>$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "01 là một kiểu int. Sử dụng
"; } ?>$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "03 thay thế
"; } ?>
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "04
"; } ?>
Tài nguyên ngữ cảnh hợp lệ được tạo bằng stream_context_create[]. Nếu bạn không cần sử dụng ngữ cảnh tùy chỉnh, bạn có thể bỏ qua tham số này trước
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "5
"; } ?>
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "06
"; } ?>
Phần bù nơi bắt đầu đọc trên luồng ban đầu. Độ lệch âm được tính từ cuối luồng
Tìm kiếm [
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "06] không được hỗ trợ với các tệp từ xa. Cố gắng tìm kiếm trên các tệp không cục bộ có thể hoạt động với độ lệch nhỏ, nhưng điều này không thể đoán trước được vì nó hoạt động trên luồng được đệm
"; } ?>
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "08
"; } ?>
Độ dài tối đa của dữ liệu đọc. Mặc định là đọc cho đến khi kết thúc tệp. Lưu ý rằng tham số này được áp dụng cho luồng do bộ lọc xử lý
Giá trị trả về
Hàm trả về dữ liệu đã đọc hoặc
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "9 khi lỗi
"; } ?>
Cảnh báo
Hàm này có thể trả về giá trị Boolean
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "9, nhưng cũng có thể trả về giá trị không phải Boolean có giá trị là
"; } ?>
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "9. Vui lòng đọc phần về Booleans để biết thêm thông tin. Sử dụng toán tử === để kiểm tra giá trị trả về của hàm này
"; } ?>
Lỗi/Ngoại lệ
Lỗi cấp độ
echo $hocweb[0][0]." ".$hocweb[0][1]." ".$hocweb[0][2]; ?>22 được tạo nếu không thể tìm thấy
filename
, $length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "08 nhỏ hơn 0 hoặc nếu tìm kiếm
"; } ?>
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "06 được chỉ định trong luồng không thành công
"; } ?>
Khi file_get_contents[] được gọi trên một thư mục, lỗi cấp độ
echo $hocweb[0][0]." ".$hocweb[0][1]." ".$hocweb[0][2]; ?>22 được tạo trên Windows và kể từ PHP 7. 4 trên các hệ điều hành khác
Nhật ký thay đổi
Phiên bảnMô tả8. 0. 0____108 hiện không có giá trị. 7. 1. 0Hỗ trợ cho$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "06 âm tính đã được thêm vào
"; } ?>
ví dụ
Ví dụ #1 Lấy và xuất mã nguồn của trang chủ của một trang web
echo $hocweb[0][0]." ".$hocweb[0][1]." ".$hocweb[0][2]; ?>29
Ví dụ #2 Tìm kiếm trong include_path
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "90
"; } ?>
Ví dụ #3 Đọc một phần của tệp
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "91
"; } ?>
Ví dụ trên sẽ xuất ra một cái gì đó tương tự như
string[14] "lle Bjori Ro"
Ví dụ #4 Sử dụng bối cảnh luồng
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "92
"; } ?>
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "93
"; } ?>
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "94
"; } ?>
ghi chú
Ghi chú. Hàm này an toàn nhị phân
Mẹo
Một URL có thể được sử dụng làm tên tệp với chức năng này nếu trình bao bọc fopen đã được bật. Xem fopen[] để biết thêm chi tiết về cách chỉ định tên tệp. Xem Giao thức và Trình bao bọc được hỗ trợ để biết các liên kết đến thông tin về khả năng của các trình bao bọc khác nhau, ghi chú về cách sử dụng và thông tin về bất kỳ biến được xác định trước nào mà chúng có thể cung cấp
Cảnh báo
Khi sử dụng SSL, Microsoft IIS sẽ vi phạm giao thức bằng cách đóng kết nối mà không gửi chỉ báo
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "95. PHP sẽ báo cáo điều này là "SSL. Fatal Protocol Error" khi bạn xem hết dữ liệu. Để giải quyết vấn đề này, giá trị của error_reporting phải được hạ xuống mức không bao gồm cảnh báo. PHP có thể phát hiện phần mềm máy chủ IIS có lỗi khi bạn mở luồng bằng trình bao bọc
"; } ?>
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "96 và sẽ chặn cảnh báo. Khi sử dụng fsockopen[] để tạo ổ cắm
"; } ?>
$length = count[$hocweb]; // Lấy chiều dài mảng for[$row = 0; $row < $length; $row++] { $length_sub = count[$hocweb[0]]; // Lấy chiều dài mảng con for[$col = 0; $col < $length_sub; $col++] { echo $hocweb[$row][$col]." "; } echo "97, nhà phát triển chịu trách nhiệm phát hiện và loại bỏ cảnh báo này
"; } ?>