2014-10-29 127 views
0

我想要做的是将一个站点的HTML存储在一个PHP变量中,以便在特定条件下可以回显该变量。我的PHP代码:如何在PHP变量中存储HTML

<?php 
$url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; 
$URL = "http://www.example.com/"; 
$URL2 = "http://www.example2.com/"; 
$website1 = ? 
$website2 = ? 
if($url == $URL) { 
    echo $website1; 
} else if($url == $URL2) { 
    echo $website2; 
} 
?> 

我想这HTML(如下图)存储在$website1
也将有HTML保存在$website2

<html> 
    <head> 
     <link rel='stylesheet' type='text/css' media='all' href='css/style.css'> 
     <link rel='stylesheet' type='text/css' media='all' href='css/jquery-ui-1.10.4.custom.css'> 
     <title>Website #One</title> 
     <script type='text/javascript' src='js/jquery-1.9.1.js'></script> 
     <script type='text/javascript' src='js/jquery-ui-1.10.4.custom.js'></script> 
     <script type='text/javascript' src='js/script.js'></script> 
    </head> 
    <body> 
    <div id='header'></div> 
    <div id='menu'> 
     <button id='navbtn' class='active btn'>Home</button><button id='navbtn2' class='btn'>Pictures</button><button id='navbtn3' class='btn'>Videos</button><button id='navbtn4' class='btn'>Games</button><button id='navbtn4' class='btn'>About</button><button id='navbtn5' class='btn'>Contact</button> 
    </div> 
    <div id='content'></div> 




    </body> 
</html> 

我怎么能做到这一点?

+0

您可以使用指向html文件的file_get_contents。 – 2014-10-29 11:31:28

回答

0

您可以使用file_get_contents(); 或者卷曲库 http://php.net/manual/fr/book.curl.php

+0

嗨感谢您的快速回复,但你能给我一个示例代码,因为我不知道你的意思 – ZP18 2014-10-29 11:34:48

+0

你必须学会​​阅读文档,否则你永远不会是一个好的程序员。这是一个非常简单的功能。 – FLX 2014-10-29 11:35:50

+0

$ website1 = file_get_contents(“http://www.website1.com”); $ website2 = file_get_contents(“http://www.website2.com”); – SheperdOfFire 2014-10-29 11:36:45

2

我不明白你使用的是什么逻辑,但你可以使用这个实现了PHP的内置功能file_get_contents()。用这样的方式:

<?php 
    $url = "http://".getenv("HTTP_HOST")."/".getenv("REQUEST_URI"); 
    $URL = "http://www.example.com/"; 
    $URL2 = "http://www.example2.com/"; 
    $website1 = file_get_contents($URL); 
    $website2 = file_get_contents($URL2); 
    if($url == $URL) { 
     echo $website1; 
    } else if($url == $URL2) { 
     echo $website2; 
    } 
?> 
+0

我会添加一个关于[allow-url-fopen]的注释(http://php.net/manual/en/filesystem.configuration.php#ini.allow-url-fopen) – 2014-10-29 11:34:53

+0

@ʰᵈˑ那是什么?我应该添加什么?随时编辑我的文章!提前致谢。 – 2014-10-29 11:35:22

+1

非常感谢你的帮助! – ZP18 2014-10-29 11:36:32

-1

为什么不干脆把两个版本中有自己的PHP文件,也就是说,如果只是一些简单的HTML页面,而不是整个网站,然后对其他的建议可能会更好。

<?php 
$url = "http://".getenv("HTTP_HOST")."/".getenv("REQUEST_URI"); 
$URL = "http://www.example.com/"; 
$URL2 = "http://www.example2.com/"; 
if($url == $URL) { 
    include 'header1.php'; 
} else if($url == $URL2) { 
    include 'header2.php'; 
} 
?> 
0

卷曲是一个很好的办法做到这一点:http://www.digimantra.com/technology/php/get-data-from-a-url-using-curl-php/

<?php 
$url='http://twitter.com/statuses/user_timeline/16387631.json'; //rss link for the twitter timeline 
print_r(get_data($url)); //dumps the content, you can manipulate as you wish to 

/* gets the data from a URL */ 

function get_data($url) 
{ 
$ch = curl_init(); 
$timeout = 5; 
curl_setopt($ch,CURLOPT_URL,$url); 
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); 
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout); 
$data = curl_exec($ch); 
curl_close($ch); 
return $data; 
} 
?> 
0

感谢球员,我能够从你的答案学习,设法得到它在这里工作是我最后的PHP代码:

<?php 
$get_url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; 
$url1 = "http://thedag.ga/thedagga/main.php"; 
$url2 = "http://thedag.ga/zp/zp18.php"; 
$tdurl1 = "http://thedag.ga/"; 
$tdurl2 = "http://www.thedag.ga/"; 
$zpurl1 = "http://zp.thedag.ga/"; 
$zpurl2 = "http://zp18.thedag.ga/"; 
$zpurl3 = "http://zp4rker.thedag.ga/"; 
if($get_url == $tdurl1 || $get_url == $tdurl2) { 
    print_r(file_get_contents($url1)); 
} else if($get_url == $zpurl1 || $get_url == $zpurl2 || $get_url == $zpurl3) { 
    print_r(file_get_contents($url2)); 
} 
?>