いくつかのインクルードを含むテンプレートがあり、Simple HTML DOM
さまざまなタスクに使用しています。
ライブラリを含めると、一部のページで次のエラーが発生します。
致命的なエラー: C:\xampp\htdocs\aa\template.php 行 142 で、134217728 バイトの許容メモリ サイズが使い果たされました (28672 バイトを割り当てようとしました)
これは、テンプレート内の私の php コードです。
<?php
$currentFile = $_SERVER["PHP_SELF"];
$parts = Explode('/', $currentFile);
$page = $parts[count($parts) - 1];
$parent = basename(dirname($_SERVER['PHP_SELF']));
$both = $parent.'/'.$page;
$content = $filename.".html";
$sidebar = $filename. "-sidebar.html";
?>
<?php include('dom.php'); ?>
<?php
if (!isset($title)) {
$html = file_get_html($_SERVER['DOCUMENT_ROOT'].'/aa/content/'.$content);
$element = $html->find('h1');
if ($element) {
$titletag = $element[0]->plaintext . ' | about-berlin.com';
}
}
else {
$titletag = $title;
}
$html->__destruct();
?>
<!DOCTYPE html>
奇妙なことに、コードを使用せずに、このようなライブラリのみを含めた場合でも、同じメモリ エラーが発生します。
<?php include('dom.php'); ?>
含めないと、すべてがエラーなしで実行されます。
file_get_html()
ほとんどの問題の原因と思われる を使用せずに、このエラーを取得するにはどうすればよいでしょうか? 変更せずにこの問題を解決するにはどうすればよいphp.ini
ですか?
編集:
いくつかの説明。私のテンプレートは次のように機能します:
somepage.php が要求されます。内部には次のコードがあります。
<?php
$path_parts = pathinfo(__FILE__);
$filename = $path_parts['filename'];
include ($_SERVER['DOCUMENT_ROOT'].'/aa/template.php');
?>
テンプレートでは、同じ名前のコンテンツ ファイル (somepage.php) が content というフォルダーからインクルードされます。