如何在php中编辑backticks中的参数?

2024-04-27 04:08:14 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我要做的是利用php中的backtick操作符来运行一些python代码,这些代码将显示在我的apachelocalhost上。这个python代码包含编辑参数的功能,但是当我试图编辑参数时,localhost网站上什么都没有显示。你知道吗

我的代码:

<!DOCTYPE html>
<html>
<head>
  <title>Upload your files</title>
</head>
<body>
  <form enctype="multipart/form-data" action="upload.php" method="POST">
    <p>Upload your file</p>
    <input type="file" name="uploaded_file"></input><br />
    <input type="submit" value="Upload"></input>
  </form>
</body>
</html>
<?PHP
  if(!empty($_FILES['uploaded_file']))
  {
    $path = "uploads/";
    $path = $path . basename( $_FILES['uploaded_file']['name']);
    if(move_uploaded_file($_FILES['uploaded_file']['tmp_name'], $path)) {
      echo "The file ".  basename( $_FILES['uploaded_file']['name']). 
      " has been uploaded";
    } else{
        echo "There was an error uploading the file, please try again!";
    }
  }
?>
<?PHP 
   $python = `python classify_image.py --image_file C:\xampp\htdocs\uploads\bamboo.jpg`;
   echo $python;
?>

这是我在Localhost中看到的: With the modified argument

但是当我删除“--image\u文件C:\xampp\htdocs\uploads时\竹子.jpg从backticks开始,python代码恢复为读取默认图像,并在本地主机上返回: Without the modified argument

有人能告诉我在php中使用backtick操作符有什么问题吗?你知道吗


Tags: path代码nameimageechoforminputhtml
1条回答
网友
1楼 · 发布于 2024-04-27 04:08:14

可以在backticks中使用变量。你知道吗

您还应该将classify_image.py调用放在if中,这样您就只能在成功上载文件后才执行此操作。你知道吗

在路径名中使用正斜杠而不是反斜杠,或者使用双反斜杠。在双引号和反斜杠中,反斜杠是转义前缀,导致对路径名的分析不正确。你知道吗

<?PHP
  if(!empty($_FILES['uploaded_file']))
  {
    $path = "uploads/";
    $path = $path . basename( $_FILES['uploaded_file']['name']);
    if(move_uploaded_file($_FILES['uploaded_file']['tmp_name'], $path)) {
      echo "The file ".  basename( $_FILES['uploaded_file']['name']). 
      " has been uploaded";
      $python = `python classify_image.py  image_file C:/xampp/htdocs/$path`;
      echo $python;
    } else{
        echo "There was an error uploading the file, please try again!";
    }
  }
?>

相关问题 更多 >