小编Wil*_*ilq的帖子

如何捕获生成器抛出的异常并恢复迭代?

我有一个生成器,它将值的集合传递给方法并生成结果。调用的方法可能会返回异常。发生这种情况时,我希望异常转到调用生成器来处理异常的代码,然后继续循环生成器。

为了说明这一点,下面是一个生成器的示例,它将产生1、抛出一个\Exception,然后产生3

/** @var \Generator $gen */
$gen = function () {
    for ($i = 1; $i <= 3; $i++) {
        if ($i == 2) {
            throw new \Exception('Exception thrown for 2');
        }

        yield $i;
    }
};
Run Code Online (Sandbox Code Playgroud)

这是我尝试运行此代码的示例,以便我可以让它产生结果3

$g = $gen();

var_export($g->current());
echo "\n";

try {
    $g->next();
    var_export($g->current());
    echo "\n";
} catch (\Exception $e) {
    echo $e->getMessage() . "\n";
}

try {
    $g->next();
    var_export($g->current());
    echo "\n";
} catch (\Exception $e) {
    echo $e->getMessage() …
Run Code Online (Sandbox Code Playgroud)

php exception generator

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

连接SAP Hana数据库时调用未定义的函数odbc_connect()消息

odbc_connect()在我的PHP页面中用来连接到HANA数据库.我在本地运行时工作正常.我将相同的PHP页面上传到服务器,我收到此错误:

Fatal error: Call to undefined function odbc_connect()
Run Code Online (Sandbox Code Playgroud)

代码:

$connect = odbc_connect("Team6DataSource", "TEAM6", "Password1", SQL_CUR_USE_ODBC);
Run Code Online (Sandbox Code Playgroud)

Team6DataSource =数据源名称.

IP地址= 54.217.234.218

谁能帮帮我吗?谢谢

php sap

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

Powershell 可以一次遍历一个集合 N 个对象吗?

我想知道如何处理对象集合的循环,以组的形式处理该集合的元素,而不是像普通 Foreach 循环那样单独处理。例如,而不是这样:

$items = get-vm
foreach ($item in $items) { do something }
Run Code Online (Sandbox Code Playgroud)

我想这样做:

$items = get-vm
foreach ((5)$item in $items) {do something}
Run Code Online (Sandbox Code Playgroud)

本质上,这个语句是想说在 items 中的 foreach 5 items 做一些工作.....

任何人都可以向我展示完成此操作所需的正确构造吗?

powershell foreach loops

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

Syffony 2中的sfUser等价物

sfUserSymfony 2中的等价物是什么?

sfUser允许使用getAttribute()方法获取用户会话属性.

Symfony\Component\Security\Core\User\User它是等价的吗?但它没有getAttribute()方法.

symfony

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

如何从php中的外部根目录访问文件

我有一个代码来下载zip文件:

$dl_path = './';  
$filename = 'favi.zip';  
$file = $dl_path.$filename; 
if (file_exists($file))  {
  header('Content-Description: File Transfer');
  header('Content-Type: application/zips');     
  header("Pragma: public");     
  header("Expires: 0");     
  header("Cache-Control:must-revalidate, post-check=0, pre-check=0"); 
  header("Content-Type:application/force-download");    
  header("Content-Type:application/download");  
  header("Content-Disposition:attachment;filename=$filename ");     
  header("Content-Transfer-Encoding:binary ");
  header('Content-Length: ' . filesize($file));
  ob_clean();
  flush();
  readfile($file);
  exit;
}
Run Code Online (Sandbox Code Playgroud)

有根目录/public_html,脚本在根目录下执行.

/目录中有zip文件.

我试图使用$dl_pathas /但它不起作用.

请帮忙.

php file

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

标签 统计

php ×3

exception ×1

file ×1

foreach ×1

generator ×1

loops ×1

powershell ×1

sap ×1

symfony ×1