php获取python输出_如何从PHP var_dump中获取Python输出(How to take Python output from PHP var_dump)...

如何从PHP var_dump中获取Python输出(How to take Python output from PHP var_dump)

我有以下Python代码:

#!/usr/bin/env python

import sys

myargs = sys.argv[1]

mylist = ["foo bar qux", "uix nan col"]

for chunk in mylist:

mems = chunk.split()

mems.append(myargs)

print mems

执行以下python test.py param产生以下结果:

['foo', 'bar', 'qux', 'param1']

['uix', 'nan', 'col', 'param1']

我想要做的是使用PHP来调用上面的python脚本并解析输出。 我在我的PHP代码(index.php)中有这个:

MYCODE

<?php echo '

This is the output of my code:

'; ?>

$vars = eval(`python /misc/path_to_mycode/test.py param1`);

var_dump($vars)

?>

但它通过网络打印出来:

I have the following Python code:

#!/usr/bin/env python

import sys

myargs = sys.argv[1]

mylist = ["foo bar qux", "uix nan col"]

for chunk in mylist:

mems = chunk.split()

mems.append(myargs)

print mems

When executed the following python test.py param giving this results:

['foo', 'bar', 'qux', 'param1']

['uix', 'nan', 'col', 'param1']

What I want to do is to use PHP to call the above python script and parse the output. I have this in my php code (index.php):

MYCODE

<?php echo '

This is the output of my code:

'; ?>

$vars = eval(`python /misc/path_to_mycode/test.py param1`);

var_dump($vars)

?>

But it prints this instead over the web:

原文:https://stackoverflow.com/questions/24008382

2020-05-02 17:05

满意答案

在php中使用exec() 。试试这样

<?php echo '

This is the output of my code:

';

exec('python /misc/path_to_mycode/test.py param1',$out);

var_dump($out)

?>

exec函数只返回命令结果的最后一行。

Use exec() in php.Try like this

<?php echo '

This is the output of my code:

';

exec('python /misc/path_to_mycode/test.py param1',$out);

var_dump($out)

?>

The exec function just return the last line from the result of the command.

2014-06-03

相关问答

它在Java中并不完全如此,因此您不需要免费获取。 它是用惯例而不是语言结构完成的。 在所有的数据传输类(甚至在所有类中,你写... ),你应该实现一个明智的toString方法。 所以在这里你需要覆盖你的Person类中的toString()并返回所需的状态。 有一些可用的工具可以帮助编写一个好的toString方法,或者大多数IDE都有自动的toString()写入快捷方式。 编辑:链接死了 - 现在可以here 。 It is not quite as baked-in in Java, s...

您可以使用{php}标签 方法1(在Smarty 3.1或更高版本中不起作用): {php}

$var =

$this->get_template_vars('var');

var_dump($var);

{/php}

方法2: {$var|@print_r}

方法3: {$var|@var_dump}

让我知道这是否有帮助。 You can use {php} tags Method 1 (won't work in Smarty 3.1 or later): {php}

$var ...

要很好地显示值,可以使用pprint模块。 使用它来转储所有变量的最简单的方法是做 from pprint import pprint

pprint(globals())

pprint(locals())

如果在CGI中运行,一个有用的调试功能是cgitb模块,它显示局部变量的值作为回溯的一部分。 To display a value nicely, you can use the pprint module. The easiest way to dump all variables wit...

的路径是/feed/entry/media:group/yt:duration/ 使用var_dump()时,您看不到这些元素,因为它们属于命名空间(media和yt)。 您可以使用SimpleXMLElement-> children()来访问这些元素,您需要提供namespace-uri作为children()参数

$xml=simplexml_load_file('http://gdata.youtube.com/feeds/api/video...

这是一个Xdebug错误。 解决方案: 禁用xdebug。 禁用xdebug的输出: This is an Xdebug bug. Solution: disable xdebug. Output with xdebug disabled:

如果你不想var_dump输出任何东西(不管xdebug是什么) // here var_dump is enabled

$varDumpEnabled = !true;

assert($varDumpEnabled, var_dump('whatever'));

nutshell ..当assert1的第一个参数为false ,将评估var_dump ..当assert的第一个参数为true时,不会评估var_dump。 if you're not wanting var_dump to ou...

在代码中: NSLog(@"%@", myVar);

这相当于 NSLog(@"%@", [myVar description]);

或者在调试器中:右键单击变量,然后选择“打印描述”。 如果要以这种方式检查自己类的对象,则需要为这些类实现方法-(NSString *)description 。 In code: NSLog(@"%@", myVar);

which is equivalent to NSLog(@"%@", [myVar description]);

Or in the ...

没有足够的代表评论。 你确定你的网络服务器能够输出UTF-8吗? 我知道在Apache中你必须手动添加它在你的httpd.conf文件中 AddDefaultCharset UTF-8

I found the problem. This line in index.php causes the bad output. I have no idea why. So I just commented it out. $response->setCompression($config->get('co...

你有没有尝试过: ob_start();

var_dump("Var_dump($res) output in a string");

$out = ob_get_clean();

echo $out;

在WAMP和ob_start / ob_get_clean工作时,var_dump本身对我不起作用。 Have you tried: ob_start();

var_dump("Var_dump($res) output in a string");

$out = ob_...

在php中使用exec() 。试试这样 <?php echo '

This is the output of my code:

';

exec('python /misc/path_to_mycode/test.py param1',$out);

var_dump($out)

?>

exec函数只返回命令结果的最后一行。 Use exec() in php.Try like this <?php echo '

This is the output of my code:

相关文章

PHP PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS、Mac OS下

...

PHP的使用细节: PHP5 内置标准扩展库(如XML扩展库等);在PECL中有大量的PHP扩展库

...

php中文字符串长度及定长截取问题使用str_len("中国") 结果为6,php

...

文章内容:我是中国人,我喜欢上javaeye 填写的标签:中国 显示的效果是:我是 <a h

...

Hadoop流 虽然Hadoop是用java写的,但是Hadoop提供了Hadoop流

...

Coreseek是一个基于sphinx引擎,支持与mmseg中文分词模块合作完成中文的全文搜索引擎。相

...

我们经常会碰到由于不知道如何配制应用服务器线程而导致应用服务器过载或崩溃的问题。尽管此类问题经常出现在

...

今天看了一下wordpress的代码,里面有些少见的php替代语法, <?php else

...

背景:项目中需要将原有的sphinx搜索引擎换成solr,以下是通过参照网络内容后,从搭建到调用的一次

...

最新问答

如果启用了复制处理程序,请确保将其置于其中一个安全角色之后。 我见过人们做的另一件事是在不同的端口上运行admin。 最好在需要auth的页面上使用SSL,这样你就不会发送明确的密码,因此管理和复制将发生在8443上,而常规查询将在8080上发生。 如果您要签署自己的证书,请查看此有用的SO页面: 如何在特定连接上使用不同的证书? I didn't know that /admin was the context for SOLR admin because /admin does not re

第一:在您的样本中,您有: 但是你在询问 //td[@class=‘CarMiniProfile-TableHeader’] (注意TableHeader中的大写'T')。 xpath区分大小写。 第二:通过查询// td [@ class ='CarMiniProfile-TableHeader'] / td,你暗示你在外部td中有一个'td'元素,而它们是兄弟姐妹。 有很多方法可以在这里获得制作和模型

这是你的答案: http://jsfiddle.net/gPsdk/40/ .preloader-container { position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; background: #FFFFFF; z-index: 5; opacity: 1; -webkit-transition: all 500ms ease-out;

问题是,在启用Outlook库引用的情况下, olMailItem是一个保留常量,我认为当您将Dim olMailItem as Outlook.MailItem ,这不是问题,但是尝试设置变量会导致问题。 以下是完整的解释: 您已将olMailItem声明为对象变量。 在赋值语句的右侧,在将其值设置为对象的实例之前,您将引用此Object 。 这基本上是一个递归错误,因为你有对象试图自己分配自己。 还有另一个潜在的错误,如果之前已经分配了olMailItem ,这个语句会引发另一个错误(可能是

我建议使用wireshark http://www.wireshark.org/通过记录(“捕获”)设备可以看到的网络流量副本来“监听”网络上发生的对话。 当您开始捕获时,数据量似乎过大,但如果您能够发现任何看起来像您的SOAP消息的片段(应该很容易发现),那么您可以通过右键单击并选择来快速过滤到该对话'关注TCP Stream'。 然后,您可以在弹出窗口中查看您编写的SOAP服务与Silverlight客户端之间的整个对话。 如果一切正常,请关闭弹出窗口。 作为一个额外的好处,wireshar

Android默认情况下不提供TextView的合理结果。 您可以使用以下库并实现适当的aligntment。 https://github.com/navabi/JustifiedTextView Android Does not provide Justified aligntment of TextView By default. You can use following library and achieve proper aligntment. https://github.com/

你的代码适合我: class apples { public static void main(String args[]) { System.out.println("Hello World!"); } } 我将它下载到c:\ temp \ apples.java。 以下是我编译和运行的方式: C:\temp>javac -cp . apples.java C:\temp>dir apples Volume in drive C is HP_PAV

12个十六进制数字(带前导0x)表示48位。 那是256 TB的虚拟地址空间。 在AMD64上阅读wiki(我假设你在上面,对吗?)架构http://en.wikipedia.org/wiki/X86-64 12 hex digits (with leading 0x) mean 48 bits. That is 256 TB of virtual address space. Read wiki on AMD64 (I assume that you are on it, right?) ar

这将取决于你想要的。 对象有两种属性:类属性和实例属性。 类属性 类属性对于类的每个实例都是相同的对象。 class MyClass: class_attribute = [] 这里已经为类定义了MyClass.class_attribute ,您可以使用它。 如果您创建MyClass实例,则每个实例都可以访问相同的class_attribute 。 实例属性 instance属性仅在创建实例时可用,并且对于类的每个实例都是唯一的。 您只能在实例上使用它们。 在方法__init__中定

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值