我可以創建動態頁面,並且它正在工作,但着陸頁加載非常緩慢。使用PHP動態快速生成頁面
我真的很喜歡一些幫助。以下是我的網站的功能。
讓我們先從一個鏈接http://example.com/search.php
:
<?php
session_start();
//(pretend there is code here that gets, decodes, and displays data from an api)
$title = $titleFromApi;
$a = $dataFromApi;
$_SESSION['storeTitle'] = $title; // stores 'title' in a session variable
$_SESSION['store_a'] = $a; // stores 'a' in a session variable
echo '<a href="http://example.com/'. $a .'/' . $title .'> ' . $title . '</a>';
// the line above is a clickable link that will take them to the landing page
?>
現在這裏是着陸頁(http://example.com/$a/$title
):
<?php
session_start();
$al = $_SESSION['store_a']; // stores session variable in new variable 'al'
$getter = 'http://api.somewebsite.com/dev/' . $al . '/get_these_variables';
// the line above gets data from an api using variable 'al'
// (pretend that there is code here that decodes the data)
// the code below displays the data retrieved from the api
foreach($data as $entry){
echo '
<div>
' . $entry['decoded_data_1']
. '
</div>
<div>
' . $entry['decoded_data_2'] // and so on
. '
</div>
'; // ends echo
}
?>
我今天學到了會議(我認爲這將讓事情變得更快);之前,我將這些數據從search.php發送到地址欄,然後在着陸頁上讀取它以傳遞變量(我知道,我對php和開發一般都很陌生)。着陸頁的網頁加載速度未發生變化。
您正在對遠程站點進行呼叫。這總是意味着您的頁面至少需要等待遠程站點響應才能顯示。 – GordonM 2013-02-19 22:08:39
search.php頁面是否位於「mysite.com」之外的其他域上? – 2013-02-19 22:13:16
使用'microtime(true)'來測量代碼中兩個或更多點之間的時間。這將幫助你識別瓶頸,儘管@Gordon說,它可能是API調用。 API可能很慢,或者您的網絡速度很慢? – halfer 2013-02-19 22:15:52