如何延长php的内存限制?

我想要一个按钮,单击该按钮时,它会生成与上一个页面相似的页面(该按钮所在的位置),并自动将用户发送到打印选项页面。此页面包含来自sybase数据库的数据,我通过odbc获取该数据。


问题是,当尝试生成打印页面时,由于“内存不足问题”,我无法获取页面。


错误:


致命错误:第83行的C:\ xampp \ htdocs \ CodeIgniter \ Samsic \ application \ models \ Pagamentos_model.php中的内存不足(已分配392167424)(试图分配387973888字节)


是的,我在StackOverflow上看到了大多数有关“内存不足(..)试图分配(..)”的类似问题。


这是不同的,因为在此类似问题的答案都无法解决!


我试过了:


ini_set('memory_limit', '-1');


ini_set('memory_limit', '128M');

这些都不起作用。


我正在使用MVC,这是我正在使用的代码:

模型:


  <?php

    ini_set('memory_limit', '-1');




        class Pagamentos_model extends CI_Model {

        public function imprimir($ano,$codigo){

                require(APPPATH.'libraries/odbc_conn.php');

                $query = odbc_exec($db, 'Select * from GP_Vw_Valores_Pagos where Ano='.$ano.' and Codigo='.$codigo.' order by CD');

                $row=odbc_fetch_array($query);

                $output= '<h1 style="text-align: center;"> Pagamentos'.$ano.' </h1>  <table class="table" style="width: 100%; margin-bottom:40px; margin-top: 15px; ">

              <thead>

                <tr style="font-size: 1em;margin-bottom: 15px;text-align: center;">

                  <th scope="col">CD</th>

                  <th scope="col">Descrição</th>

                  <th scope="col">Tipo</th>

                  <th scope="col">Janeiro</th>

                  <th scope="col">Fevereiro</th>

                  <th scope="col">Março</th>

                  <th scope="col">Abril</th>

                  <th scope="col">Maio</th>

                  <th scope="col">Junho</th>

                  <th scope="col">Julho</th>

                  <th scope="col">Agosto</th>

                  <th scope="col">Setembro</th>

                  <th scope="col">Outubro</th>

                  <th scope="col">Novembro</th

芜湖不芜
浏览 140回答 1
1回答

明月笑刀无情

如果查询和获取成功,$row则将不会false并且while($row)将无限循环。您要删除此:$row=odbc_fetch_array($query);然后将其添加到您的循环中:while($row=odbc_fetch_array($query))&nbsp;{
打开App,查看更多内容
随时随地看视频慕课网APP