<font id="nc9yk"></font>
  • <tt id="nc9yk"></tt>
          <rp id="nc9yk"><optgroup id="nc9yk"></optgroup></rp>
          <tt id="nc9yk"><form id="nc9yk"></form></tt>

            <cite id="nc9yk"></cite>

            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函數內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

            相關文章

            最新評論

            hao500彩票 www.crucerocapitalesbalticas.com:分宜县| www.d4ed.com:冀州市| www.mrhealy.com:兰溪市| www.wewworld.com:卓资县| www.carrentalhurghada.com:阜宁县| www.hg85456.com:葵青区| www.sunmastering.com:防城港市| www.780790.com:林西县| www.artbyandra.com:荣成市| www.e2aa.com:绥江县| www.jam-bg.com:嘉义县| www.shoottheliving.com:如皋市| www.mr-impact-windows.com:资溪县| www.qs655.com:鹿邑县| www.youetme.com:虞城县| www.faribaba.com:安远县| www.024wanlikt.com:洛阳市| www.highrisebuilder.com:吉隆县| www.cp22277.com:普格县| www.rs338.com:平和县| www.sharebearapp.com:巴彦淖尔市| www.lgfyj.com:拉萨市| www.globtacs.com:蒲江县| www.playing-roulette.net:兴山县| www.6969t.com:丰原市| www.celebedia.com:古蔺县| www.onetimeofferz.com:潢川县| www.fjfgg.com:芒康县| www.ddmjml.com:新乡市| www.rescommsolutions.com:中牟县| www.vidyaseminars.com:弥渡县| www.hs855.com:宽城| www.huthug.com:额尔古纳市| www.muibela.com:柳江县| www.mannequin-enfant.com:科技| www.mixbrand.net:策勒县| www.senimarmer.com:饶阳县| www.dennisforhire.com:阿巴嘎旗| www.n5883.com:松原市| www.cp5583.com:滦平县| www.hubchicago.com:嫩江县| www.zqwnw.cn:河间市| www.greenbychance.net:介休市| www.biaomeiqiyue.com:石柱| www.huanhua168.com:耒阳市| www.yfsco.com:鄂托克旗| www.cnsc-cts.com:都江堰市| www.fengfa-china.com:田东县| www.cheabc168.com:福鼎市| www.yysjx.com:托克逊县| www.baidujxcm.com:宜丰县| www.yttianyufood.com:吴忠市| www.gf665.com:德安县| www.f5862.com:沅江市| www.yzbux.com:息烽县| www.stephanmueller.net:镇宁| www.bigideasgroup.org:安达市| www.bol-usa.com:龙井市| www.eprsdwj.com:常山县| www.bac3d.com:辽中县| www.jackrabbitcreative.com:西华县| www.jobexperts.org:嘉善县| www.megahjayatenda.com:茌平县| www.alpacitnz.com:江阴市| www.cp3669.com:黎城县| www.tvhmoob.com:黔南| www.bjxdby.com:新乡市| www.2muchfat.com:泌阳县| www.f9676.com:成安县| www.story-of-us.com:广安市| www.xashanjia.com:山阴县| www.qz336.com:象州县| www.addx-technologies.com:同江市| www.dlzhutan.com:孟州市| www.hannahchungportfolio.com:高邮市| www.apexelpaso.com:四会市| www.cncddc.com:武定县| www.soupesasoups.com:汽车| www.practicalitstrategy.com:新干县| www.climatepro2015.com:昌宁县| www.re-cyclers.com:云南省| www.stevebayer.com:梁河县| www.company-in-china.com:化州市| www.thuebannhadat.net:怀集县|