PHP를 사용하여 데이터베이스에 저장된 내용을 반향합니다. 콘텐츠는 모든 유형의 데이터를 담고있는 DIV입니다.php로 "echoed"div 속성 변경하기
문제는 내가 ID를 모른다는 것이며 두 번 이상 표시하려고하면 이러한 DIV에 문제가있는 것입니다.
그래서 아이디어는 DIV id를 표시 할 때마다 수정하는 것입니다. 다음과 같음 :
<?php modify_div_id($data,"id-456"); ?>
어떻게하면됩니까?
PHP를 사용하여 데이터베이스에 저장된 내용을 반향합니다. 콘텐츠는 모든 유형의 데이터를 담고있는 DIV입니다.php로 "echoed"div 속성 변경하기
문제는 내가 ID를 모른다는 것이며 두 번 이상 표시하려고하면 이러한 DIV에 문제가있는 것입니다.
그래서 아이디어는 DIV id를 표시 할 때마다 수정하는 것입니다. 다음과 같음 :
<?php modify_div_id($data,"id-456"); ?>
어떻게하면됩니까?
이것은보기 싫지만 작동한다고 생각합니다.
function modify_div_id($data, $new_id) {
return preg_replace('/(<div[^>]+?id=)("|\')(.*?)("|\')/i', '$1$2' . $new_id . '$4', $data);
}
가장 좋은 방법은 XML 구문 분석기를 사용하여 속성을 변경하는 것입니다.
편집 :이 함수는 div에 이미 id 특성이 있다고 가정합니다.
편집 # 2
작동하는 것 같습니다.
[email protected]:~$ cat | php -r "eval(file_get_contents('php://stdin'));"
function modify_div_id($data, $new_id) {
return preg_replace('/(<div[^>]+?id=)("|\')(.*?)("|\')/i', '$1$2' . $new_id . '$4', $data);
}
echo modify_div_id('<div pajas="pajas" id="fisk">Innehåll</div>', 'nytt_id');
# Result: <div pajas="pajas" id="nytt_id">Innehåll</div>
귀하의 질문은 모호합니다.
우선 해제, HTML 요소의 id
속성 때문에 고유 id
이 적절한 반향 고유해야합니다 (당신은 또한 class
을 사용할 수 있습니다). 당신이 당신의 데이터베이스를 조회하고 다시받은 경우
, 다음과 같이 id
및 내용을 포함하는 배열, 당신은 기능을 사용할 수 있습니다, 말 :
function modify_div_id($data, $id) {
echo "<div id='$id'>$data</div>";
}
그냥 예를.
div 태그가 문자 그대로 데이터베이스에 저장되어 있다고합시다. – Tesserex
예 ... 콘텐츠가있는 div를 찾을 수있는 필드가 있습니다. – Zakaria