Php 将数据从一个cli应用程序传递到另一个cli应用程序的最佳方式是什么
例如,如何将数据从一个cli应用程序(例如Ruby脚本)传递到PHP脚本。我指的是原始数据、文本、二进制等。。由于使用临时文件的原始数据,参数也会失效。我所知道的最后一件事是stdin,stdout。也许有人知道什么更好?取决于这些程序的执行方式(相互之间的关系)。如果一个停止并启动另一个,STDIN/OUT,甚至抛出一个文件可能会起到作用(尽管它可能被认为是跛行,但它确实如此),如果有大量的数据,您甚至可以考虑在SQLite之类的数据库中创建一个小的数据库表。这还取决于需求,数据之间传递的数据可能有多不稳定Php 将数据从一个cli应用程序传递到另一个cli应用程序的最佳方式是什么,php,ruby,shell,command-line,command-line-interface,Php,Ruby,Shell,Command Line,Command Line Interface,例如,如何将数据从一个cli应用程序(例如Ruby脚本)传递到PHP脚本。我指的是原始数据、文本、二进制等。。由于使用临时文件的原始数据,参数也会失效。我所知道的最后一件事是stdin,stdout。也许有人知道什么更好?取决于这些程序的执行方式(相互之间的关系)。如果一个停止并启动另一个,STDIN/OUT,甚至抛出一个文件可能会起到作用(尽管它可能被认为是跛行,但它确实如此),如果有大量的数据,您甚至可以考虑在SQLite之类的数据库中创建一个小的数据库表。这还取决于需求,数据之间传递的数据
如果存在父/子进程关系,那么父进程启动子进程,则可以考虑管道/FIFO或共享内存或消息队列或任何其他形式的IPC。
取决于这些程序是如何执行的(彼此之间)。如果一个停止并启动另一个,STDIN/OUT,甚至抛出一个文件可能会起到作用(尽管它可能被认为是跛行,但它确实如此),如果有大量的数据,您甚至可以考虑在SQLite之类的数据库中创建一个小的数据库表。这还取决于需求,数据之间传递的数据可能有多不稳定
如果有父/子进程关系,那么父进程启动子进程,您可能会考虑管道/FIFO或共享内存或消息队列或任何其他形式的IPC。
< P >您正在运行什么操作系统?这在某种程度上决定了你可以得到什么。您应该使用平台的通用功能。在*nix系统上,我们使用管道(|
)、套接字和数据文件,具体取决于应用程序
实际上没有一种方法可以做到这一点,它只取决于应用程序的类型和数据的类型
如果要移动文本或CSV数据列,可以使用管道或文本文件
如果要在Ruby应用程序之间移动散列和对象,请使用JSON或“Marshall”数据和管道、套接字或文件
如果要在不同语言之间移动数据,请使用JSON、XML或YAML以及这些数据路径之一
我们经常使用JSON作为应用程序间的数据格式,并编写代码,以便在设置命令行标志时允许它发出JSON。这使我们可以轻松地用一点REST服务包装命令行应用程序,并远程调用它们,将结果发布到web上
尽管如此,没有一条硬性规定来说明任何事情是如何完成的,只要与您的代码保持一致,并遵循您使用的应用程序的风格即可。您使用的是什么操作系统?这在某种程度上决定了你可以得到什么。您应该使用平台的通用功能。在*nix系统上,我们使用管道(
|
)、套接字和数据文件,具体取决于应用程序
实际上没有一种方法可以做到这一点,它只取决于应用程序的类型和数据的类型
如果要移动文本或CSV数据列,可以使用管道或文本文件
如果要在Ruby应用程序之间移动散列和对象,请使用JSON或“Marshall”数据和管道、套接字或文件
如果要在不同语言之间移动数据,请使用JSON、XML或YAML以及这些数据路径之一
我们经常使用JSON作为应用程序间的数据格式,并编写代码,以便在设置命令行标志时允许它发出JSON。这使我们可以轻松地用一点REST服务包装命令行应用程序,并远程调用它们,将结果发布到web上
综上所述,没有一条硬性规定来说明如何做任何事情,只要与您的代码保持一致,并遵循您正在使用的应用程序的风格即可。xml通常用于不同应用程序之间的通信。他没有问要使用什么格式,而是问如何在程序之间发送数据。这并没有回答这个问题。xml通常用于不同应用程序之间的通信。他没有问使用什么格式,而是问如何在程序之间发送数据。这并不能回答问题。