【问题标题】:How to PHPWord foreach codeBlock如何 PHPWord foreach 代码块
【发布时间】:2021-11-02 08:26:43
【问题描述】:

我需要将MYSQL数据库中的数据转换成Word。

Word文件

我的代码

require './modules/vendor/autoload.php';
require 'core.php';
$templateProcessor = new \PhpOffice\PhpWord\TemplateProcessor(__DIR__ . '/wordfile.docx');
$topshiriqnoma = $connection->table('topshiriqnoma')->where('chiqinn', $id)->orderBy('id', 'desc')->paginate(50);
$nomi = $connection->table('topshiriqnoma')->where('chiqinn', $id)->orderBy('id', 'desc')->first();

unlink(UPLOAD_PATH . '/porucheniya/' . $item->chiqnm." ".shaklqisqa($item->chiqsh, $item->chiqnm) . '.docx');

foreach ($topshiriqnoma as $item) {
    $summahamma = str_replace(" ", "", $item->sum); // 70
    if (strpos($summahamma, ',') == true) {
        $mas = explode(',', $summahamma);
        $summasoz = convertNumberToWord($mas['0']) . " сўм " . $mas['1'] . " тийин";
        $summaraqam = number_format((float)$summahamma, 2, '.', ' ');
    } elseif (strpos($summahamma, '.') == true) {
        $mas = explode('.', $summahamma);
        $summasoz = convertNumberToWord($mas['0']) . " сўм " . $mas['1'] . " тийин";
        $summaraqam = number_format((float)$summahamma, 2, '.', ' ');
    } else {
        $summasoz = convertNumberToWord($item->sum) . " сўм";
        $summaraqam = number_format((float)$summahamma, 2, ',', ' ');
    }

    $replacements[] = [
        'no' => $item->no,
        'sana' => $item->sana,
        'tashkilot' => $item->chiqnm." ".shaklqisqa($item->chiqsh, $item->chiqnm),
        'chiqxr' => $item->chiqxr,
        'chiqinn' => $item->chiqinn,
        'chiqbk' => $item->chiqbk,
        'chiqmfo' => $item->chimfo,
        'summa' => $summaraqam,
        'kirtash' => $item->kirnm." ".shaklqisqa($item->kirsh, $item->kirnm),
        'kirxr' => $item->kirxr,
        'kirinn' => $r = (0 != $item->kirinn) ? $item->kirinn : '',
        'kirbk' => $item->kirbk,
        'kirmfo' => $item->kirmfo,
        'summasoz' => $summasoz,
        'maqsad' => $item->maqsad,
        'boshliq' => $item->bosh,
        'xisobchi' => $item->bux
    ];
}
$templateProcessor->cloneRow('nameblock', count($replacements));
$templateProcessor->saveAs(UPLOAD_PATH . '/porucheniya/' . $item->chiqnm." ".shaklqisqa($item->chiqsh, $item->chiqnm) . '.docx');
header('Location: ' . $home . '/upload/porucheniya/' . $item->chiqnm." ".shaklqisqa($item->chiqsh, $item->chiqnm) . '.docx');

但是如果Word文件是这样的,一切正常。问题是它必须在我的表格模式(第一张图片)模式下工作。

【问题讨论】:

标签: php phpword


【解决方案1】:

它不起作用,因为我使用了一个更旧的 PHPWord。我已经安装了一个新的 PHPword,一切正常

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-08
    • 1970-01-01
    • 2022-03-10
    • 2020-05-10
    • 1970-01-01
    • 2017-04-27
    相关资源
    最近更新 更多