【发布时间】:2022-12-31 00:11:58
【问题描述】:
我有一个来自 wordpress 数据库的多个字符串。 它是一个来自插件的表格,它以一种非常奇怪的方式存储数据,如下所示:
print_r($results);
Array
(
[form] => text^name14^Antony~text^secondname14^White~email^email14^antony.white@gmail.com
)
Array
(
[form] => ......
)
我需要得到干净的数据,所以:
foreach ($results as $result) {
$formdata_array = explode('~',$result);
$formdata_array_count = count($formdata_array);
for ( $i=0 ; $i < $formdata_array_count ; $i++) {
if ( empty( $formdata_array[$i] ) ) {
continue;
}
$elemnts = explode('^',$formdata_array[$i]);
$type = $elemnts[0];
$element_name = $elemnts[1];
$value = $elemnts[2];
$value = nl2br($value);
}
在这一点上我得到:
print_r($value)
Antony
White
antony.white@gmail.com
但我需要有一个数组来处理
Array
(
[0] => Antony
[1] => White
[2] => antony.white@gmail.com
)
我尝试了不同的方法,如 array_merge、array_column、array_combine,但我无法获得最终结果
【问题讨论】:
-
请向我们展示您的代码,添加minimal reproducible example。
-
我的猜测是您为这三个项目调用了三次
print_r(array($output));。我们需要查看执行此操作的代码来帮助您。 -
你
explode()ing是否正确输入了$output来制作数组? -
更新了我的问题