<rp id="kut09"><nav id="kut09"></nav></rp>
<rp id="kut09"></rp>
  • <tt id="kut09"></tt>
    <tt id="kut09"><tbody id="kut09"></tbody></tt>
    1. <u id="kut09"></u>
    2. <tt id="kut09"><noscript id="kut09"></noscript></tt>
    3. python如何調用php文件中的函數詳解

       更新時間:2020年12月29日 10:46:57   作者:xiaofeiyuan  
      這篇文章主要給大家介紹了關于python如何調用php文件中函數的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

      前言

      python調用php代碼實現思路:php文件可通過在terminal中使用php命令行進行調用,因此可使用python開啟子進程執行命令行代碼。函數所需的參數可通過命令行傳遞。

      測試環境

      1、操作系統:macos10.13.2

      2、php版本:PHP 7.1.7(mac自帶)

      3、python版本:python3.6.0

      4、python庫:subprocess

      調用php函數

      php命令行調用php文件中的函數

      php文件:test_hello.php

      <?php
      
      
      function hello_world($s1)
      {
      	$str1 = $s1;
      	echo $str1;
      	echo "\n";
      }
      
      function hello_world2($s1, $s2)
      {
      	$str1 = $s1;
      	$str2 = $s2;
      	echo $s1;
      	echo "**********";
      	echo $s2;
      	echo "\n";
      }
      
      // 獲取參數,索引為0為調用的文件路徑,索引為1為調用的函數,索引為2為函數傳入參數$s1,索引為3為函數參數$s2
      
      var_dump($argv);
      // exit;
      
      // 調用函數
      $func_name = $argv[1];
      
      
      if ($func_name == "hello_world")
      {
      	// 參數1
      	$param1 = $argv[2];
      	hello_world($param1);
      }
      elseif ($func_name == "hello_world2")
      {
      	// 參數1
      	$param1 = $argv[2];
      	// 參數2
      	$param2 = $argv[3];
       hello_world2($param1, $param2);
      }
      else
      {
       echo "the function $func_name is not exist !";
      }
      
      ?>
      

      terminal執行php命令

      # 字符串中包含空格、逗號、反斜杠,需要使用""來確定為1個參數
      php -f test_hello.php hello_world "My name is John\\, age is 20."
      php -f test_hello.php hello_world2 "My name is John\\, age is 20." "My hometown is BaoDing."
      php -f test_hello.php hello_world3 "My name is John\\, age is 20."
      

      執行結果

      python子進程執行php命令行

      python文件:test.py,將test_hello.php與test.py放在同目錄下運行

      import subprocess
      
      
      class Test(object):
       def run(self, cmd):
       proc = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE) # 開啟子進程
       res = proc.stdout.read()
       if res:
        res = res.decode()
       return res
      
      
      cmd1 = 'php -f test_hello.php hello_world "My name is John\\, age is 20."'
      cmd2 = 'php -f test_hello.php hello_world2 "My name is John\\, age is 20." "My hometown is BaoDing."'
      cmd3 = 'php -f test_hello.php hello_world3 "My name is John\\, age is 20."'
      obj = Test()
      for i in [cmd1, cmd2, cmd3]:
       res = obj.run(cmd1)
       print(res)
       print("*" * 10)
      

      到此這篇關于python如何調用php文件中函數的文章就介紹到這了,更多相關python調用php函數內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

      相關文章

      最新評論

      218彩票 www.tmcmotor.com:太保市| www.prfacadier.com:买车| www.casagourmande.com:昭觉县| www.wdzhidao.com:商南县| www.zglynn.com:策勒县| www.wpudining.com:武宁县| www.fenggongsi.com:武平县| www.hse6.com:通州区| www.aujardindesgraines.com:白山市| www.fengfa-china.com:融水| www.gbdbn.cn:广宗县| www.mfbbn.com:泰和县| www.trebroncompany.com:休宁县| www.yanasegal.com:仲巴县| www.fgzcs.com:三门县| www.bikeleads.com:大埔区| www.dx557.com:藁城市| www.gayboyfetisch.net:衡阳县| www.afgj642.com:镇安县| www.nebraskaairshow.com:沙河市| www.loan-guider.com:肇源县| www.wainini.com:浦北县| www.xmpa18.com:沂水县| www.anjiescl.com:舞阳县| www.arfengwork.com:土默特左旗| www.rjccw.cn:孝义市| www.curtisdemarce.com:屏边| www.tadalafil1.com:贺州市| www.carpetgalleryny.com:梓潼县| www.jordanegasc.com:东山县| www.hg62456.com:绥江县| www.ezkertza.com:尤溪县| www.altahrirtv.com:咸阳市| www.christianvoices.net:武平县| www.70088z.com:临颍县| www.lnwgx.cn:宝兴县| www.tammyhomesold.com:七台河市| www.ptlins.com:卓资县| www.tc-punching.com:三穗县| www.brwhm.com:襄汾县| www.new-vibrations.com:郑州市| www.gerakansehat.com:宁津县| www.mejoresamigas.net:平和县| www.dibangjiaju.com:永嘉县| www.cnzqhc.com:会宁县| www.hsbzd.com:彰化县| www.sxhimac.com:台中县| www.wi-fisys.com:安多县| www.compassionhealing.com:南投市| www.checkloansijjxr.com:临高县| www.tbspp.com:苗栗县| www.sh-ble.com:靖宇县| www.gzgwg.com:巴南区| www.nillinternational.com:长春市| www.cindymcelroy.com:方城县| www.trekbulls.com:雷州市| www.rgepi.com:鹤山市| www.920suncity.com:马龙县| www.bjhbyhdx.com:平定县| www.018448.com:桑植县| www.qatarsworldcup.com:赞皇县| www.logosheji8.com:凉城县| www.faribaba.com:滦南县| www.black-butler.com:海晏县| www.katepattison.com:若羌县| www.shannonrenfrew.com:中卫市| www.tq4h.com:威海市| www.cp3585.com:崇礼县| www.juandavidperafan.com:洛南县| www.blissfuljapan.com:中牟县| www.ynlcdcj.com:陇西县| www.ng335.com:吴江市| www.qingshushanzhuang.com:祁连县| www.suntikputihdahlia.net:吉水县| www.znmqw.cn:来宾市| www.wangwangla.com:霍城县| www.cskurumsaltuketim.com:南昌市| www.xhboat.com:黔江区| www.hotmusicpick.com:克拉玛依市| www.3dbasketballcamp.com:封丘县| www.kingbcw.com:乐陵市| www.bzsoft.org:敦化市| www.lgfyj.com:昌江| www.manganetabarespoiler.com:绥德县|