【发布时间】:2025-12-24 07:05:11
【问题描述】:
我从数组(来自 BD)中创建了一个字符串,但字符串看起来很糟糕:
a:1:{i:0;a:7:{s:2:"id";s:1:"1";s:5:"title";s:39:"shock absorber ms 290, 310, 390";s:11:"description";s:32:"size - 8х22х29 mm.";s:3:"img";s:1:"1";s:5:"price";s:4:"0.9$";s:8:"category";s:38:"Details";s:5:"brand";s:5:"Stihl";}}
我如何删除除了减震器 ms 290、310、390 之外的所有内容。请注意,这是一个订单信,所以 substr 无济于事,因为信中会有更多具有不同数量符号的产品
$name = $_POST['name'];
$tel = $_POST['tel'];
$g = $_SESSION['cart_list'];
$c = serialize($g);
$title = "order";
$body = "
<h2>New order</h2>
<b>Name:</b> $name<br>
<b>Tel:</b> $tel<br><br>
<b>Cart:</b>$c<br>
";
【问题讨论】:
-
您想在它是一个数组时对其进行操作,然后对其进行编码。
json_encode是更好的选择。 -
你连载
$_SESSION['cart_list'];为什么?在你这样做之前它是什么样子的 -
如果它真的生成了那个序列化的字符串,那么你也有一个多字节字符集问题,因为这个
s:32:"size - 8х22х29 mm."不是一个 32 字节长的字符串 -
$_SESSION['cart_list'];是当前会话期间购物车中的产品。 json_encode 可能更好,但我的一些字母是西里尔字母,我收到类似:\u0410\u043c\u043e\ in mail.
标签: php mysql phpmyadmin