راکت

اجرا فایل پایتون در لاراول یا php

7 پاسخ

سلام من میخوام از طریق php یا لاراول فایل پایتونی که در پوشه public پروژه هست رو اجرا کنم .
برای اینکار چیکار باید کرد

ثبت پرسش جدید

پاسخ‌ها

7
علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

میتونی از Symfony Process استفاده کنی

میتونی به شکل زیر در لاراول نصبش کنی:

composer require symphony/process

و با کد زیر باید بتونی کد پایتون رو اجرا کنی (آدرس فایل رو کامل پاس بده):

use Symfony\Component\Process\Process;
use Symfony\Component\Process\Exception\ProcessFailedException;

$process = new Process(['python', '/path/to/your_script.py']);
$process->run();

// executes after the command finishes
if (!$process->isSuccessful()) {
    throw new ProcessFailedException($process);
}

echo $process->getOutput();
Mostafa Nazar
Mostafa Nazar
@mostafa.8722

تخصص: برنامه نویس وب و موبایل

ممنون @ali.bayat از پاسخگویی این رو امتحان کردم .البته به این صورت

$r = base_path()."\public"."\stp2stl.py" ;

        $process = new Process(['python', $r]);
        $process->run();

ولی خطای زیر رو میده

"""
The command "python D:\web\projects\myprojectName\public\stp2stl.py" failed.

Exit Code: 1(General error)

Working directory: D:\web\projects\myprojectName\public

Output:
================

Error Output:
================
'python' is not recognized as an internal or external command,
operable program or batch file.

در حالی که پایتون نصبه و اجرا میشه .
مشکل از کجاست؟

شاید پاسخ شما همین‌جا باشد

علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

'python' is not recognized as an internal or external command,
operable program or batch file.

مشکل از شناخته نشدن دستور python هست

python رو به Environment Variable های سیستم عامل اضافه کردید؟

Mostafa Nazar
Mostafa Nazar
@mostafa.8722

تخصص: برنامه نویس وب و موبایل

اره .
تو cmd که میزنم میاره. البته یه warning هم میده

This Python interpreter is in a conda environment, but the environment has
not been activated.  Libraries may fail to load.  To activate this environment
please see https://conda.io/activation
Mostafa Nazar
Mostafa Nazar
@mostafa.8722

تخصص: برنامه نویس وب و موبایل

@ali.bayat
آقا علی من الان دارم از anconda استفاده میکنم. شاید به این خاطر باشه .
الان من اگه این رو بخوام تو هاست لینوکسی اجرا کنم یعنی اینکه تو هاست لینوکس دستور وارد کنم که فایل پایتون نصب بشه قابل اجرا هستش؟
البته تو هاست لینوکسی هم پایتون نصب هستش.

علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

Mostafa Nazar
Mostafa Nazar
@mostafa.8722

تخصص: برنامه نویس وب و موبایل

@ali.bayat
اینا رو که تو cmd میزنم اوکی هستش. تو لاراول یا php چطوری اکتیو کنم یا اجرا کنم؟

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام