최신글 뽑기 대 메모리가 막힙니다. 정보
그누보드 최신글 뽑기 대 메모리가 막힙니다.본문
그룹별 최신글을 뽑을 때 게시판이 하도 많아서인지
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 8099 bytes) in /home/saemgacom/public_html/gnu3/lib/string.lib.php on line 45
이런 식의 에러 메시지가 뜹니다.
메모리를 늘리라는 듯인가요?
어느 파일에서 어떻게 늘려야 하는지요?
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 8099 bytes) in /home/saemgacom/public_html/gnu3/lib/string.lib.php on line 45
이런 식의 에러 메시지가 뜹니다.
메모리를 늘리라는 듯인가요?
어느 파일에서 어떻게 늘려야 하는지요?
댓글 전체
최신 버전입니다. 3.41 입니다.
<?
if (defined(__FILE__)) return;
define(__FILE__, TRUE);
//==============================================================================
// 문자열 관련 함수
//==============================================================================
// 한글 한글자(2byte)는 길이 2, 공란.영숫자.특수문자는 길이 1
function cut_str($str, $len, $suffix="…")
{
$s = substr($str, 0, $len);
$cnt = 0;
for ($i=0; $i<strlen($s); $i++)
if (ord($s[$i]) > 127)
$cnt++;
$s = substr($s, 0, $len - ($cnt % 2));
if (strlen($s) >= strlen($str))
$suffix = "";
return $s . $suffix;
}
// TEXT 형식으로 변환
function get_text($str, $html=0)
{
$source[] = "/ /";
$target[] = " ";
$source[] = "/</";
$target[] = "<";
$source[] = "/>/";
$target[] = ">";
//$source[] = "/\"/";
//$target[] = """;
$source[] = "/\'/";
$target[] = "'";
$source[] = "/}/";
$target[] = "}";
if ($html) {
$source[] = "/\n/";
$target[] = "<br>";
}
return preg_replace($source, $target, $str);
}
// way.co.kr 의 wayboard 참고
function urlautolink($str)
{
global $default;
/*
$str = ereg_replace("<", "\t_lt_\t", $str);
$str = ereg_replace(">", "\t_gt_\t", $str);
$str = ereg_replace("&", "&", $str);
$str = ereg_replace(""", "\"", $str);
$str = eregi_replace("([^(http://)]|\(|^)(www\.[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:=_\?/~\+%@;-]+)", "\\1<A HREF=\"http://\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
$str = eregi_replace("([^(HREF=\"?'?)|(SRC=\"?'?)]|\(|^)((http|https|ftp|telnet|news|mms)://[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:=_\?/~\+%@;-\|]+)", "\\1<A HREF=\"\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
//$str = eregi_replace("([^(HREF=)]|\(|^)\"?'?([a-zA-Z0-9\._-]+@[a-zA-Z0-9\.-]+)", "\\1<A HREF=\"mailto:\\2\">\\2</A>", $str);
$str = eregi_replace("(([a-z0-9_]|\-|\.)+@([^[:space:]]*)([[:alnum:]-]))", "<a href='mailto:\\1'>\\1</a>", $str);
$str = ereg_replace("\t_lt_\t", "<", $str);
$str = ereg_replace("\t_gt_\t", ">", $str);
*/
# 속도 향샹 031011
$str = preg_replace("/</", "\t_lt_\t", $str);
$str = preg_replace("/>/", "\t_gt_\t", $str);
$str = preg_replace("/&/", "&", $str);
$str = preg_replace("/"/", "\"", $str);
$str = preg_replace("/([^(http:\/\/)]|\(|^)(www\.[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:=_\?\/~\+%@;-]+)/i", "\\1<A HREF=\"http://\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
$str = preg_replace("/([^(HREF=\"?'?)|(SRC=\"?'?)]|\(|^)((http|https|ftp|telnet|news|mms):\/\/[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:=_\?\/~\+%@;-\|]+)/i", "\\1<A HREF=\"\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
$str = preg_replace("/(([a-z0-9_]|\-|\.)+@([^[:space:]]*)([[:alnum:]-]))/i", "<a href='mailto:\\1'>\\1</a>", $str);
$str = preg_replace("/\t_lt_\t/", "<", $str);
$str = preg_replace("/\t_gt_\t/", ">", $str);
return $str;
}
// url에 http:// 를 붙인다
function set_http($url)
{
if (!trim($url))
return;
if (!eregi("^(http|https)://", $url))
$url = "http://" . $url;
return $url;
}
// HTML 특수문자 변환 htmlspecialchars
function hsc($str)
{
$trans = array("\"" => """, "'" => "'", "<"=>"<", ">"=>">");
$str = strtr($str, $trans);
return $str;
}
?>
===============
위 내용이 string.lib.php 파일 내용인데 45줄을 없애도 안 되네요.
if (defined(__FILE__)) return;
define(__FILE__, TRUE);
//==============================================================================
// 문자열 관련 함수
//==============================================================================
// 한글 한글자(2byte)는 길이 2, 공란.영숫자.특수문자는 길이 1
function cut_str($str, $len, $suffix="…")
{
$s = substr($str, 0, $len);
$cnt = 0;
for ($i=0; $i<strlen($s); $i++)
if (ord($s[$i]) > 127)
$cnt++;
$s = substr($s, 0, $len - ($cnt % 2));
if (strlen($s) >= strlen($str))
$suffix = "";
return $s . $suffix;
}
// TEXT 형식으로 변환
function get_text($str, $html=0)
{
$source[] = "/ /";
$target[] = " ";
$source[] = "/</";
$target[] = "<";
$source[] = "/>/";
$target[] = ">";
//$source[] = "/\"/";
//$target[] = """;
$source[] = "/\'/";
$target[] = "'";
$source[] = "/}/";
$target[] = "}";
if ($html) {
$source[] = "/\n/";
$target[] = "<br>";
}
return preg_replace($source, $target, $str);
}
// way.co.kr 의 wayboard 참고
function urlautolink($str)
{
global $default;
/*
$str = ereg_replace("<", "\t_lt_\t", $str);
$str = ereg_replace(">", "\t_gt_\t", $str);
$str = ereg_replace("&", "&", $str);
$str = ereg_replace(""", "\"", $str);
$str = eregi_replace("([^(http://)]|\(|^)(www\.[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:=_\?/~\+%@;-]+)", "\\1<A HREF=\"http://\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
$str = eregi_replace("([^(HREF=\"?'?)|(SRC=\"?'?)]|\(|^)((http|https|ftp|telnet|news|mms)://[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:=_\?/~\+%@;-\|]+)", "\\1<A HREF=\"\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
//$str = eregi_replace("([^(HREF=)]|\(|^)\"?'?([a-zA-Z0-9\._-]+@[a-zA-Z0-9\.-]+)", "\\1<A HREF=\"mailto:\\2\">\\2</A>", $str);
$str = eregi_replace("(([a-z0-9_]|\-|\.)+@([^[:space:]]*)([[:alnum:]-]))", "<a href='mailto:\\1'>\\1</a>", $str);
$str = ereg_replace("\t_lt_\t", "<", $str);
$str = ereg_replace("\t_gt_\t", ">", $str);
*/
# 속도 향샹 031011
$str = preg_replace("/</", "\t_lt_\t", $str);
$str = preg_replace("/>/", "\t_gt_\t", $str);
$str = preg_replace("/&/", "&", $str);
$str = preg_replace("/"/", "\"", $str);
$str = preg_replace("/([^(http:\/\/)]|\(|^)(www\.[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:=_\?\/~\+%@;-]+)/i", "\\1<A HREF=\"http://\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
$str = preg_replace("/([^(HREF=\"?'?)|(SRC=\"?'?)]|\(|^)((http|https|ftp|telnet|news|mms):\/\/[a-zA-Z0-9\.-]+\.[\xA1-\xFEa-zA-Z0-9\.:=_\?\/~\+%@;-\|]+)/i", "\\1<A HREF=\"\\2\" TARGET='$default[de_link_target]'>\\2</A>", $str);
$str = preg_replace("/(([a-z0-9_]|\-|\.)+@([^[:space:]]*)([[:alnum:]-]))/i", "<a href='mailto:\\1'>\\1</a>", $str);
$str = preg_replace("/\t_lt_\t/", "<", $str);
$str = preg_replace("/\t_gt_\t/", ">", $str);
return $str;
}
// url에 http:// 를 붙인다
function set_http($url)
{
if (!trim($url))
return;
if (!eregi("^(http|https)://", $url))
$url = "http://" . $url;
return $url;
}
// HTML 특수문자 변환 htmlspecialchars
function hsc($str)
{
$trans = array("\"" => """, "'" => "'", "<"=>"<", ">"=>">");
$str = strtr($str, $trans);
return $str;
}
?>
===============
위 내용이 string.lib.php 파일 내용인데 45줄을 없애도 안 되네요.