小编Sco*_*son的帖子

找不到类“PhpOffice\PhpSpreadsheet\Spreadsheet”

我已经使用 Composer 安装了 phpoffice/phpspreadsheet。它安装在基本的“供应商”目录中。但是,我需要使用它的地方是在子域目录中。我手动将其移至不同的“供应商”目录。

更深一点../public_html/subdomains/newsite/vendor/

我正在从文件中调用代码更深一点../backend/web/xlsx.php

我的实际代码如下:

<?php
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

require '../../vendor/autoload.php';
$spreadsheet = new Spreadsheet();
?>
Run Code Online (Sandbox Code Playgroud)

仅使用这个简单的设置,我就会收到以下致命错误:

Class 'PhpOffice\PhpSpreadsheet\Spreadsheet' not found
Run Code Online (Sandbox Code Playgroud)

我还在学习一些关于命名空间和作曲家的知识,当我手动移动文件时,我可能错过了一些东西。

任何帮助将不胜感激。

谢谢你!

phpspreadsheet

5
推荐指数
1
解决办法
3万
查看次数

Yii2 在控制台模式下捕获异常

我正在尝试在我的控制台应用程序中添加一些错误捕获块。

具体来说,例如我有一个 SQL 代码块,

$query = "SELECT * FROM
          visits_column_maps";
$mapsAry = Yii::$app->db->createCommand($query)->queryAll();
Run Code Online (Sandbox Code Playgroud)

如果出现问题,则会引发异常并结束脚本。

我想抓住这个并按照我的意愿结束它。

我尝试了 try/catch 块;

try {
    $query = "SELECT * FROM
              visits_column_maps";
    $mapsAry = Yii::$app->db->createCommand($query)->queryAll();
} catch(Exception @e) {
    // graceful exit here
    echo "Exception caught";
    exit();
}
Run Code Online (Sandbox Code Playgroud)

但是当通过更改表名称进行测试时,我仍然在捕获它之前得到脚本终止。

我想我可能需要在某个地方调整配置,但不确定在哪里。

感谢您提供的任何帮助。斯科蒂

php error-handling exception yii2

1
推荐指数
1
解决办法
1053
查看次数

标签 统计

error-handling ×1

exception ×1

php ×1

phpspreadsheet ×1

yii2 ×1