3

我想使用 php 在数据库中存储一个很长的字符串。字符串大小为 43kb。但是当我将此字符串传递给它不支持的 php 变量时。它在一个字符串中支持 16379 个字符。当我再添加一个字符时,Dreamweaver 会在该行显示 s 语法错误。如何在 php 变量中存储 50,000 个字符的长字符串。

4

2 回答 2

8

只要您有足够的内存来处理它,您就可以将任何内容存储在 PHP 字符串变量中。

43kb 还不如 16379 个字符。

Dreamweaver(我会尽量好),应该只是有它自己的内存限制,或者不用于处理这样的变量。

您没有尝试运行 PHP 脚本吗?

顺便说一句,如果你有这么大的数据要存储在变量中,我真的建议你把它从你的 PHP 脚本移动到一个文件中。

请注意,默认情况下,PHP 有memory_limit128MB,但您可以增加它。

于 2012-06-21T10:51:46.483 回答
2

PHP 字符串没有实际限制。

这是您的问题的可能重复项:PHP 中字符串的最大长度是多少?

为了您的方便,我将在此处粘贴Bill Karwin的回复:

但是,PHP 脚本在给定脚本执行中可以为所有变量分配的总内存有限制,因此这也有效地限制了单个字符串变量的长度。

这个限制是memory_limitphp.ini 配置文件中的指令。内存限制在 PHP 5.2 中默认为 128MB,在早期版本中默认为 8MB。

如果您未在 php.ini 文件中指定内存限制,它将使用默认值,该默认值已编译到 PHP 二进制文件中。理论上你可以修改源代码并重建 PHP 来改变这个默认值。

如果您-1在 php.ini 文件中指定内存限制,它将停止检查并允许您的脚本使用操作系统将分配的内存。这仍然是一个实际限制,但取决于系统资源和架构。

于 2012-06-21T10:52:26.557 回答