gpt4 book ai didi

php - 通知 : Use of undefined constant STDOUT - assumed 'STDOUT'

转载 作者:IT王子 更新时间:2023-10-29 00:08:04 26 4
gpt4 key购买 nike

我正在尝试在 Xampp 中设置 Amazon Aws Php SDK。

安装 SDK 后,我尝试使用以下代码从 Amazon S3 下载存储桶。

<?php

error_reporting(-1);
ini_set('display_errors', 'on');

include_once ('aws/aws-autoloader.php');
use Aws\S3\S3Client;

$client = S3Client::factory(array(
'key' => '__my__key__',
'secret' => '__secret__key__'
));

$destination = 'downloaded_bucket';
$source_bucket = '__my__bucket__name';
$key_prefix = '';
$options = array('debug'=>true);

$client -> downloadBucket($destination,$source_bucket,$key_prefix,$options);
?>

现在从我的浏览器执行这个 php,我得到以下错误。

Notice: Use of undefined constant STDOUT - assumed 'STDOUT' in __my__path\Aws\S3\Sync\AbstractSyncBuilder.php on line 294
STDOUT
Warning: fwrite() expects parameter 1 to be resource, string given in __my__path\Aws\S3\Sync\DownloadSyncBuilder.php on line 124
STDOUT
Warning: fwrite() expects parameter 1 to be resource, string given in __my__path\Aws\S3\Sync\DownloadSyncBuilder.php on line 124
STDOUT
Warning: fwrite() expects parameter 1 to be resource, string given in __my__path\Aws\S3\Sync\DownloadSyncBuilder.php on line 124

最后 3 个警告是由于第一个通知而发生的,因为传递的不是资源,而是字符串“STDOUT”。

第一次通知的原因是什么?这条通知的代码段是

if ($this->debug) {
$this->addDebugListener($sync, is_bool($this->debug) ? STDOUT : $this->debug);
}

这是 SDK 的一部分。fwrite 警告代码的罪魁祸首是 addDebugListener 函数

protected function addDebugListener(AbstractSync $sync, $resource)
{
//blah blah
fwrite($resource, "Downloading {$from} -> {$to}\n");
//blah blah
}

我的PHP版本是5.4.16

最佳答案

在这种情况下,问题在于未定义常量 STDOUT。它是使用命令行时可用的常量,因此为了在其他设置中使用它们,您可以这样做:

if(!defined('STDIN'))  define('STDIN',  fopen('php://stdin',  'rb'));
if(!defined('STDOUT')) define('STDOUT', fopen('php://stdout', 'wb'));
if(!defined('STDERR')) define('STDERR', fopen('php://stderr', 'wb'));

这将检查常量是否已定义,如果没有,则根据它们的预期工作方式定义它们。

可以找到有关常量的更多信息here in the PHP docs .

关于php - 通知 : Use of undefined constant STDOUT - assumed 'STDOUT' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17769041/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com