Как я могу предотвратить открытие страницы в iframe с помощью PHP? Как Gmail внутри iframe?
Для PHP вы можете использовать.
header("X-FRAME-OPTIONS: DENY");
Это поддерживается только в современных браузерах: IE8 +, Firefox 3.6.9, Safari 4 и Chrome. Для более старого браузера вам также потребуется JavaScript.
Вы можете сделать это с помощью JavaScript
if( (self.parent && !(self.parent===self)) &&(self.parent.frames.length!=0)){ self.parent.location=document.location }
Это перенаправит со страницы, которая откроет вашу страницу в iframe на вашей странице.
Вы не можете узнать из кода PHP, загружается ли текущая страница внутри iframe. PHP запускается на сервере, прежде чем что-либо будет отправлено в браузер.
Только JavaScript, который работает в браузере, может определить, является ли его окно родительским или нет, и что-то сделать.