PHP 中这是什么类型的数组?
What type of array is this in PHP?
由于我不是高级 PHP 程序员,我对 PHP 的初步了解表明,PHP 数组如下所示:
$indexed_array = array( 1, 'Toothless', 23, 2456 );
$associative_array = array( 1 => 'Toothless', 2 => 2456 );
$multidimensional_array = array( 'me' => 'Toothless', 'nature' => 'Fearless' );
现在我开始了解 PHP shorthand array()
属性:
$shorthand_array = [ 1, 'Toothless', 23, 2456 ];
$shorthand_mixture = [ 'me' => 'Toothless', 1, 'nature' => 'Fearless' ]; *
* source^
我实际上是 WordPress 的粉丝,在 WordPress postmeta
table 中,WP 存储了一些 meta_value
s(类型:longtext ) 在这样的文本中(没有 space,纯字符串块):
a:3:{i:571;s:16:"path/to/image.ext";i:572;s:16:"path/to/image.ext";i:411;s:16:"path/to/image.ext";}
使用 jsfiddle 的 TidyUp 我明白了,它是一个数组:
a: 3: {
i: 571;
s: 16: "path/to/image.ext";
i: 572;
s: 16: "path/to/image.ext";
i: 411;
s: 16: "path/to/image.ext";
}
我现在可以破译了,a
代表array
,值3表示它有3个索引; i
表示index
,它存储了附件的ID,s
表示string
(每个s
之外的字符数),它存储了路径附件。 ...使用CMB2插件我发现了相同的存储结构。
现在我正在处理一个 Raw PHP 项目,其中的数据库结构和存储规划是我自己的。所以我在重复领域中考虑这样的事情。我想将常见的重复字段存储在同一个 meta_key
下,并将使用这样的数组检索单个字段及其关联值。
顺便说一句,我无法理解如何以这种格式存储来自 PHP 的数据,这是什么类型的数组?我实际上是如何从用户输入中生成这样的复杂字符串(实际上是一个数组)的?
查看 PHP 函数 serialize()
和 unserialize()
:
序列化()
http://php.net/manual/en/function.serialize.php
反序列化()
由于我不是高级 PHP 程序员,我对 PHP 的初步了解表明,PHP 数组如下所示:
$indexed_array = array( 1, 'Toothless', 23, 2456 );
$associative_array = array( 1 => 'Toothless', 2 => 2456 );
$multidimensional_array = array( 'me' => 'Toothless', 'nature' => 'Fearless' );
现在我开始了解 PHP shorthand array()
属性:
$shorthand_array = [ 1, 'Toothless', 23, 2456 ];
$shorthand_mixture = [ 'me' => 'Toothless', 1, 'nature' => 'Fearless' ]; *
* source^
我实际上是 WordPress 的粉丝,在 WordPress postmeta
table 中,WP 存储了一些 meta_value
s(类型:longtext ) 在这样的文本中(没有 space,纯字符串块):
a:3:{i:571;s:16:"path/to/image.ext";i:572;s:16:"path/to/image.ext";i:411;s:16:"path/to/image.ext";}
使用 jsfiddle 的 TidyUp 我明白了,它是一个数组:
a: 3: {
i: 571;
s: 16: "path/to/image.ext";
i: 572;
s: 16: "path/to/image.ext";
i: 411;
s: 16: "path/to/image.ext";
}
我现在可以破译了,a
代表array
,值3表示它有3个索引; i
表示index
,它存储了附件的ID,s
表示string
(每个s
之外的字符数),它存储了路径附件。 ...使用CMB2插件我发现了相同的存储结构。
现在我正在处理一个 Raw PHP 项目,其中的数据库结构和存储规划是我自己的。所以我在重复领域中考虑这样的事情。我想将常见的重复字段存储在同一个 meta_key
下,并将使用这样的数组检索单个字段及其关联值。
顺便说一句,我无法理解如何以这种格式存储来自 PHP 的数据,这是什么类型的数组?我实际上是如何从用户输入中生成这样的复杂字符串(实际上是一个数组)的?
查看 PHP 函数 serialize()
和 unserialize()
:
序列化()
http://php.net/manual/en/function.serialize.php
反序列化()