[英]Extra text comes from shell_exec command when executed from php
我正在使用 s3cmd 将文件从 AWS 获取到我的 ubuntu 服务器。
s3cmd get s3://bucket/filename newfilename
从 ubuntu 终端运行时它工作正常。
但是当我像下面这样从 php 运行时
$query1 = 's3cmd get s3://bucket/filename newfilename';
$q1 = serialize(shell_exec($query1));
$data2 = array( 'data' => $q1);
header('Content-type: application/json');
echo json_encode( $data2 );
它可以工作,但是来自 json_encode 的响应与额外的文本连接。
{"data":"s:122:\"File s3:............
什么是 s:122 以及如何删除它。 不过,我不是在寻找 sub_string。
当您serialize
某个值时 - 在结果字符串中有值的类型和值本身。 s:122
,你问过,说 values 是一个长度为122
的字符串。 所以如果你不想出现这个字符串——不要序列化值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.