我一直用它来将基本网站文本翻译成不同的语言。它一直运行良好,直到我更新到PHP 5.3.8。它通过耗尽所有内存完全取下了我的服务器。我究竟做错了什么?我肯定会说我会得到很多评论:))
try {
$gt = new Gtranslate;
$gt->setRequestType('curl');
$SQL = "SELECT * FROM PAGE_CONTENT WHERE live_page = '1'";
$result = mysql_query($SQL);
while ($row = mysql_fetch_array($result)) {
$page_id_sub = $row["page_id"];
$page_title = $row["page_title"];
$page_permalink = $row["page_permalink"];
if (empty($mylang)) {
echo "<a href='/$permalink/$page_permalink.html'>$page_title</a> |";
} else {
$page_trans = $gt->$mylang("$page_title");
echo "<a href='/$permalink/$page_permalink.html'>$page_trans</a> |";
}
}
} catch (GTranslateException $ge) {
echo $ge->getMessage();
}
答案 0 :(得分:6)
我会像这样调试,以检查哪个进程卡住了。
<?php
echo "\n start: " . memory_get_usage() . "\n";
try{
$gt = new Gtranslate;
$gt->setRequestType('curl');
echo "\n after class: " . memory_get_usage() . "\n";
$SQL = "SELECT * FROM PAGE_CONTENT WHERE live_page = '1'";
$result = mysql_query( $SQL );
echo "\n after query: " . memory_get_usage() . "\n";
while( $row = mysql_fetch_array( $result ) ) {
$page_id_sub = $row["page_id"];
$page_title = $row["page_title"];
$page_permalink = $row["page_permalink"];
if(empty($mylang)){
echo "<a href='/$permalink/$page_permalink.html'>$page_title</a> |";
}
else {
$page_trans = $gt->$mylang("$page_title");
echo "<a href='/$permalink/$page_permalink.html'>$page_trans</a> |";
}
}
echo "\n after while: " . memory_get_usage() . "\n";
}
catch (GTranslateException $ge){
echo $ge->getMessage();
}
echo "\n end: " . memory_get_usage() . "\n";