Mảng trong url PHP
Cách đây ít lâu, tôi đã đăng cách trích xuất tên miền, đường dẫn, v.v. từ một url bằng PHP và trong bài đăng tiếp theo này cho biết cách trích xuất chuỗi truy vấn thành một mảng kết hợp bằng cách sử dụng hàm parse_str Show
Trích xuất chuỗi truy vấn bằng parse_urlTrong ví dụ này, chúng tôi sẽ xem xét URL từ truy vấn [chris hope] tại Google (nhân tiện, tôi không hiển thị cho đến trang thứ hai) trông như thế này http://www.google.com/search?hl=en&source=hp&q=chris+hope&btnG=Google+Search&meta=&aq=f&oq= Sử dụng parse_url, chúng ta có thể dễ dàng trích xuất chuỗi truy vấn như vậy $parts = parse_url($url); echo $parts['query']; Đầu ra từ trên sẽ là cái này hl=en&source=hp&q=chris+hope&btnG=Google+Search&meta=&aq=f&oq= Bên cạnh đó, trước khi tiếp tục sử dụng parse_str để trích xuất các phần riêng lẻ của chuỗi truy vấn, hãy thực hiện print_r($parts) sẽ hiển thị điều này Array ( [scheme] => http [host] => www.google.com [path] => /search [query] => hl=en&source=hp&q=chris+hope&btnG=Google+Search&meta=&aq=f&oq= ) Trích xuất các phần chuỗi truy vấn bằng parse_strHàm parse_str nhận một hoặc hai tham số (tham số thứ hai từ PHP 4. 0. 3) và không trả về bất kỳ giá trị nào. Nếu có tham số thứ hai, các giá trị từ chuỗi truy vấn được trả về trong tham số đó dưới dạng một mảng kết hợp. Nếu nó không có mặt, thay vào đó chúng được đặt thành các biến trong phạm vi hiện tại, điều này không thực sự lý tưởng Vì vậy, không có tham số đầu tiên parse_str($parts['query']); Bây giờ bạn có thể lặp lại giá trị "q" như thế này echo $q; Theo ý kiến của tôi, sẽ tốt hơn nếu các giá trị được trả về dưới dạng một mảng như vậy parse_str($parts['query'], $query); Bây giờ làm print_r($query) sẽ xuất ra cái này Array ( [hl] => en [source] => hp [q] => chris hope [btnG] => Google Search [meta] => [aq] => f [oq] => ) Giá trị "q" bây giờ có thể được lặp lại như thế này Theo dõi bài viếtHãy đọc bài viết của tôi có tiêu đề "PHP. lấy từ khóa từ url tham chiếu của công cụ tìm kiếm" để tìm hiểu cách sử dụng hàm parse_url kết hợp với hàm parse_str để xem chuỗi truy vấn mà khách truy cập đã nhập vào công cụ tìm kiếm
đó là phiên bản được mã hóa URL của Bạn muốn chuyển một mảng từ trang này sang trang khác bằng URL làm tham số. Mảng có thể là mảng một chiều hoặc mảng nhiều chiều Giải phápĐể truyền mảng bằng URL, chúng ta phải tạo chuỗi truy vấn được mã hóa URL của mảng đó rồi truyền qua URL. Chúng ta có thể làm điều đó theo hai cách- Phương pháp 1. Sử dụng hàm http_build_query()Bước 1. Chuẩn bị mảng để chuyển qua URL Hàm http_build_query() có thể chuyển đổi một mảng thành chuỗi truy vấn được mã hóa URL tương đương. Xem ví dụ sau- '[email protected]', array("php","mysql"), 'age'=>28); echo "next page"; ?> [wpdm_file id=103] Làm thế nào nó hoạt động Bước 2. Cách nhận mảng từ URL "; echo $_GET[0][0]; echo " Ghi chú. Bạn cũng có thể chuyển mảng kết hợp. Không chỉ mảng, bạn cũng có thể gửi chuỗi đơn giản theo cách tương tự Phương pháp 2. Sử dụng các hàm serialize() và urlencode()Bước 1. Chuẩn bị mảng để chuyển qua URL '[email protected]', array("php","mysql"), 'age'=>28); echo "next page"; ?> [wpdm_file id=104] Làm thế nào nó hoạt động http. //localhost/…/trang 2. php?str=a%3A3%3A%7Bs%3A5%3A%22email%22%3Bs%3A13%3A%22test%40test. com%22%3Bi%3A0%3Ba%3A2%3A%7Bi%3A0%3Bs%3A3%3A%22php%22%3Bi%3A1%3Bs%3A5%3A%22mysql%22%3B%7Ds%3A3%3A% Làm cách nào để chuyển một mảng trong URL trong PHP?Để truyền một mảng dưới dạng tham số URL, bạn có thể sử dụng hàm có sẵn của php http_build_query() . http_build_query() trả về cho bạn chuỗi truy vấn được mã hóa URL.
Làm cách nào để lấy dữ liệu từ URL trong PHP?PHP $_GET là một biến siêu toàn cầu PHP được sử dụng để thu thập dữ liệu biểu mẫu sau khi gửi biểu mẫu HTML với method="get". $_GET cũng có thể thu thập dữ liệu được gửi trong URL. Khi người dùng nhấp vào liên kết "Test $GET", các thông số "subject" và "web" được gửi đến "test_get
Làm cách nào để thêm tham số truy vấn vào URL trong PHP?Cách đáng tin cậy để thêm một tham số GET cụ thể là gì? . echo http_build_url($url, array("query" => "the=query&parts=here"), HTTP_URL_JOIN_QUERY); .
Làm cách nào để lưu trữ URL trong biến trong PHP?Tạo một biến PHP sẽ lưu trữ URL ở định dạng chuỗi . Kiểm tra xem máy chủ có bật HTTPS không. Nếu có, hãy thêm “https” vào chuỗi URL. Nếu HTTPS không được bật, hãy thêm “http” vào chuỗi URL. |