راکت

جدا کردن کلمات در php

1 پاسخ

سلام
من کد زیر رو دارم که جزئیات محصول مانند نام، تعداد و قیمت رو تو یک خط و جمله لیست میکنه

{foreach from=$invoiceitems item=item}
   {$item.description}
{/foreach}

نمونه خروجی
نام محصول - 5 عدد - 150,000 تومان
آیا راهی در php هست که از هر یک از مقادیر یک متغییر جدا ساخت و در جای دیگه استفاده کرد؟
اینم بگم که قالب از smarty استفاده میکنه و php خالص نیست

ثبت پرسش جدید

پاسخ‌ها

1
علی بهاری
علی بهاری
@alibahari

تخصص: برنامه نویس

 $rawData = ["محصول A - 5 عدد - 150000", "محصول B - 3 عدد - 80000"];
 $processedData = [];

foreach ($rawData as $line) {
    list($desc, $qtyPrice) = explode('-', $line, 2); // تقسیم بر اساس اولین '-'
    preg_match('/(\d+)\s*عدد\s*(\d+)/u', $qtyPrice, $matches);

    $processedData[] = [
        'description' => trim($desc),
        'quantity' => (int)$matches[1],
        'price' => (int)$matches[2]
    ];
}

 $smarty->assign('invoiceItems', $processedData);

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام