Hướng dẫn get data attribute php - lấy thuộc tính dữ liệu php

Hiện tại tôi đang sử dụng mã này.

$html = file_get_html[$url];
$file = $html->find['audio']; 
$data['download'] = $file->attr['data-file'];

Để thử và thu thập dữ liệu từ đây.

Mã của tôi từ trên không hoạt động, vì một số lý do.

Nerdlyist

2.7722 huy hiệu vàng18 Huy hiệu bạc29 Huy hiệu đồng2 gold badges18 silver badges29 bronze badges

Đã hỏi ngày 17 tháng 10 năm 2018 lúc 12:11Oct 17, 2018 at 12:11

9

Vui lòng thử mã dưới đây.

$url = '//somedomain.com/somesite/';
$content = file_get_contents[$url];
$first_step = explode[ '
' , $first_step[1] ]; echo $data['download']; exit;

Đã trả lời ngày 17 tháng 10 năm 2018 lúc 12:36Oct 17, 2018 at 12:36

Có thể là một cái gì đó như thế này sẽ hoạt động.

$DOM = new DOMDocument;
$DOM->loadHTML[$html];
$xpath = new DOMXpath[$DOM];
$items = $xpath->query["//div[contains[@class,'player-init']]"];
$mydata = $items->documentElement->getAttribute['data-file'];

Đã trả lời ngày 17 tháng 10 năm 2018 lúc 12:28Oct 17, 2018 at 12:28

Mối quan tâm của tôi là trích xuất các liên kết từ một div bằng thư viện PHP HTML DOM.

Mã minh họa:

include["simple_html_dom.php"];
$html='
';

Tôi cần tìm nạp tất cả các tên miền từ DIV sau đó lưu trữ chúng trong một mảng PHP bằng cách sử dụng HTML DOM Simple Parser aplanple:

domaine.com,domaine.info,domaine.org,domaine.net,domaine.biz,domaine.fr

Cảm ơn bạn.

Đã hỏi ngày 11 tháng 6 năm 2015 lúc 12:39Jun 11, 2015 at 12:39

3

include["simple_html_dom.php"];
$html='
'; $str_html=str_get_html[$html]; // $file_html=file_get_html[$html]; // use file_get_html if you parse an url. $div=$str_html->find["div#base"]; $count=count[$div]-1; for[$a=0;$afind["div#base",$a]->getAttribute['url-data']; $parse = parse_url[$url]; $domain = $parse['host']; $array[]=$domain; } print_r[$array];

Đã trả lời ngày 11 tháng 6 năm 2015 lúc 12:57Jun 11, 2015 at 12:57

AnassanassAnass

1.8682 Huy hiệu vàng14 Huy hiệu bạc20 Huy hiệu Đồng2 gold badges14 silver badges20 bronze badges

1

HTML5 được thiết kế với khả năng mở rộng cho dữ liệu nên được liên kết với một yếu tố cụ thể nhưng không cần có bất kỳ ý nghĩa xác định nào.

0 Các thuộc tính cho phép chúng tôi lưu trữ thêm thông tin về các yếu tố HTML tiêu chuẩn, ngữ nghĩa mà không có các bản hack khác như thuộc tính không chuẩn hoặc các thuộc tính bổ sung trên DOM.

Cú pháp HTML

Cú pháp đơn giản. Bất kỳ thuộc tính nào trên bất kỳ phần tử nào có tên thuộc tính bắt đầu bằng

1 là thuộc tính dữ liệu. Giả sử bạn có một bài viết và bạn muốn lưu trữ một số thông tin bổ sung không có bất kỳ đại diện trực quan nào. Chỉ cần sử dụng các thuộc tính
2 cho điều đó:


Truy cập JavaScript

Đọc các giá trị của các thuộc tính này trong JavaScript cũng rất đơn giản. Bạn có thể sử dụng

3 với tên HTML đầy đủ của chúng để đọc chúng, nhưng tiêu chuẩn xác định một cách đơn giản hơn: A
4 bạn có thể đọc qua thuộc tính
5.

Để nhận thuộc tính

2 thông qua đối tượng
5, hãy lấy thuộc tính bằng một phần của tên thuộc tính sau
1 [lưu ý rằng các dấu gạch ngang được chuyển đổi thành Camelcase].

const article = document.querySelector["#electric-cars"];
// The following would also work:
// const article = document.getElementById["electric-cars"]

article.dataset.columns; // "3"
article.dataset.indexNumber; // "12314"
article.dataset.parent; // "cars"

Mỗi thuộc tính là một chuỗi và có thể được đọc và viết. Trong cài đặt trường hợp trên

9 sẽ thay đổi thuộc tính đó thành
$url = '//somedomain.com/somesite/';
$content = file_get_contents[$url];
$first_step = explode[ '
' , $first_step[1] ]; echo $data['download']; exit;
0.

Truy cập CSS

Lưu ý rằng, vì các thuộc tính dữ liệu là các thuộc tính HTML đơn giản, bạn thậm chí có thể truy cập chúng từ CSS. Ví dụ: để hiển thị dữ liệu cha mẹ trên bài viết, bạn có thể sử dụng nội dung được tạo trong CSS với hàm

$url = '//somedomain.com/somesite/';
$content = file_get_contents[$url];
$first_step = explode[ '
' , $first_step[1] ]; echo $data['download']; exit;
1:

article::before {
  content: attr[data-parent];
}

Bạn cũng có thể sử dụng các bộ chọn thuộc tính trong CSS để thay đổi kiểu theo dữ liệu:

article[data-columns="3"] {
  width: 400px;
}
article[data-columns="4"] {
  width: 600px;
}

Bạn có thể thấy tất cả điều này làm việc cùng nhau trong ví dụ JSBIN này.

Các thuộc tính dữ liệu cũng có thể được lưu trữ để chứa thông tin liên tục thay đổi, như điểm số trong một trò chơi. Sử dụng Truy cập CSS và Truy cập JavaScript ở đây, điều này cho phép bạn xây dựng một số hiệu ứng tiện lợi mà không phải viết các thói quen hiển thị của riêng bạn. Xem Screencast này để biết ví dụ sử dụng chuyển đổi nội dung và CSS được tạo [ví dụ JSBIN].

Giá trị dữ liệu là chuỗi. Giá trị số phải được trích dẫn trong bộ chọn để tạo kiểu có hiệu lực.

Vấn đề

Không lưu trữ nội dung nên hiển thị và có thể truy cập trong các thuộc tính dữ liệu, bởi vì công nghệ hỗ trợ có thể không truy cập chúng. Ngoài ra, trình thu thập dữ liệu tìm kiếm không thể lập chỉ mục các giá trị của các thuộc tính dữ liệu.

Các vấn đề chính cần xem xét là hỗ trợ và hiệu suất của Internet Explorer. Internet Explorer 11+ cung cấp hỗ trợ cho tiêu chuẩn, nhưng tất cả các phiên bản trước đó không hỗ trợ

5. Để hỗ trợ IE 10 và dưới bạn cần truy cập các thuộc tính dữ liệu với
3 thay thế. Ngoài ra, hiệu suất của các thuộc tính đọc ____10 so với lưu trữ dữ liệu trong một đối tượng JavaScript thông thường là kém.

Điều đó nói rằng, đối với siêu dữ liệu liên quan đến phần tử tùy chỉnh, chúng là một giải pháp tuyệt vời.

Trong Firefox 49.0.2 [và có lẽ các phiên bản sớm hơn/sau này], các thuộc tính dữ liệu vượt quá 1022 ký tự sẽ không được đọc bởi JavaScript [ECMAScript 4].

Xem thêm

  • Bài viết này được điều chỉnh từ việc sử dụng các thuộc tính dữ liệu trong JavaScript và CSS trên hacks.mozilla.org.
  • Các thuộc tính tùy chỉnh cũng được hỗ trợ trong SVG 2;Xem
    $url = '//somedomain.com/somesite/';
    $content = file_get_contents[$url];
    $first_step = explode[ '
    ' , $first_step[1] ]; echo $data['download']; exit;
    5 và
    0 để biết thêm thông tin.
  • Cách sử dụng các thuộc tính dữ liệu HTML [sitePoint]

Bài Viết Liên Quan

Chủ Đề