PHP相当于这个Javascript
问题描述:
我有一个带有DIV的schema.org标记的HTML模板。 DIV内容通过PHP填充为 ,但是当我们缺少数据时,DIV内容会留空/空。目前,我们可以通过使用下面的JavaScript检查字段长度来隐藏DIV - 但是,因为它是客户端,Google的丰富数据测试工具仍然会在缺少/空内容的代码中看到schema.org标记,并且抱怨缺失数据。PHP相当于这个Javascript
所以,我需要隐藏的DIV如果是空的,服务器端在处理之前。我无法弄清楚这个Javascript检查与PHP相当。
JavaScript方法IN USE
<script>
var inside = document.getElementById("persona");
if(inside.innerHTML.length < 1) {
document.getElementById("staffm").style.display = "none";
} else {
document.getElementById("staffm").style.display = "block";
}
</script>
恶劣的PHP代码,我尝试使用(VERSION 30亿的东西)
<?php
$div = getElementById('staffm');
if (ob_get_length($div) < 1) {
$div->setAttribute("style", "display:none");
} else {
die('');
}
?>
我不认为这是隔靴搔痒正确但我真的无法找到关于这类任务的“简单”资源/帖子 - 其他问题似乎要比我需要或理解的更深,而且我迷路了。所以,任何帮助将不胜感激。
答
在PHP中使用“getElementById”是无效的,因为PHP是在服务器中执行的,而不是在客户端中执行的,因此,您尝试访问客户端Web浏览器中的html对象,并使用服务器语言PHP)。我建议您了解DOM操作和Ajax,以便使用XMLHttpRequest对象“通信”Javascript和PHP。
这是什么?您无法访问PHP中的DOM,并且语言完全不同,用于不同的地方等等,所以PHP没有替代javascript。 – adeneo 2013-04-29 03:27:18
你甚至想要做什么? – 2013-04-29 03:30:59
@adeno是的,你可以在PHP中访问DOM,但无可否认,所使用的方法有点超出了我对PHP的理解,这里是一个例子[link] http://stackoverflow.com/questions/8144061/using-php-to -get-dom-element – DMSJax 2013-04-29 03:35:44