Come passare una variabile da php a python

Per trasferire un parametro da php a python, assegno il valore a una variabile php ( es. $item ).

Poi la aggiungo in coda alla stringa che richiama il programma python tramite l'istruzione exec.

Codice PHP

  1. $item=urlencode($item);
  2. $output = exec("python /path/prova.py $item");
  3. echo $output;

Lo script php esegue lo script python salvando il risultato di ritorno nella variabile $output.

Nello script python importo il modulo sys.

Codice Python

  1. #!/usr/bin/python
  2. import sys
  3. if len(sys.argv)>0:
  4. var=sys.argv[1]

Verifico se la lista sys.argv è composta da più di un elemento.

Se len(sys.argv)>0 allora leggo il primo argomento sys.argv[1] e lo assegno alla variabile var.

Ho così trasferito il valore della variabile php nello script python.

E per passare altri parametri?

La stringa sys.argv è una lista composta dal nome del programma seguito dagli argomenti.

['nome_script', 'arg 1', 'arg2', ]

Quindi, per passare un secondo parametro devo solo aggiungerlo in coda alla stringa che richiama lo script.

Nota. In alternativa, posso anche unire più argomenti in una sola stringa usando un carattere separatore e passarlo come unico parametro.

In questo modo ho passato una o più variabili da php a python.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Python e Php

  1. Come eseguire uno script python da php
  2. Come passare una variabile da php a python