【发布时间】:2013-10-05 04:40:11
【问题描述】:
我有一张包含公司徽标的表格....每当我读取像 4096 字节这样的小图像时,它工作得很好,但我无法读取 10000 字节强大>在 php.ini 中。 它是从数据库中读取的 4096 字节
更新: Sql 中的列长度:
我的模型代码
function GetLogoById($Id)
{
$this->load->database();
mssql_query("SET TEXTSIZE 2147483647");
// or use CI's active record
$this->db->query("SET TEXTSIZE 2147483647");
$query = $this->db->query( "EXEC GetLogoById '$Id'" );
$result = array();
foreach ($query->result() as $row)
{
$result[] = array("Logo"=> $row->Logo);
}
return $result;
}
我的控制器代码:
public function GetLogoById()
{
parse_str($_SERVER['QUERY_STRING'],$_GET);
$Id = $_GET['Id'];
$this->load->model('MyModel');
$result = $this->MyModel->GetLogoById($Id);
header('Content-type: image/png');
echo $result[0]['Logo'];
}
我只得到 4096 个字节,例如:(string:4096) ����
我在浏览器上收到此错误:
【问题讨论】:
-
@PatrickEvans,实际上是另一个人在.NET 上使用的同一列和数据 ....它工作正常...所以,我不这么认为,这是数据的问题..对于同一列另一条大小为 4088 的记录可以正常工作。但是对于没有出现在 10000 大小的 PHP 代码上的列...我认为,我必须增加 php 大小限制。但如何......我不知道。
-
我在使用 MsSql。我的数据是图像的二进制数组。我正在调用数据并在 url 上显示....对于拥有 3000 个数据大小的人来说,代码可以正常工作。不能超过 10000 个数据大小。
-
@PatrickEvans:我认为问题不是,数据库上有多少字节存储...问题是从数据库中检索时...最近的 4096 大小的数据可以赶上 PHP 代码仍然没有出现数据。那么,我们如何检索或增加 php 内存大小。
-
@PatrickEvans:那么问题是什么?
-
@Jignesh.Raj,你说你的 logo 的列类型是 BINARY,从我看到的来源来看,BINARY 只能保存最大 8000 字节,所以如果你尝试存储大于该字段中的 8 KB 会将数据截断为 8000 字节,其余部分会丢失。您和 Kvadiyatar 提到了增加 PHP 内存大小,但这并不重要,因为您没有收到 Exceeded Memory Limit 错误
标签: php codeigniter cakephp codeigniter-2 codeigniter-url