Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 帕尔姆在空白处分开_Php_Ibm Midrange_Zend Server - Fatal编程技术网

Php 帕尔姆在空白处分开

Php 帕尔姆在空白处分开,php,ibm-midrange,zend-server,Php,Ibm Midrange,Zend Server,使用Zendserver从IBMi服务器调用PHP 我向php脚本发送了一些参数。在我们的一台机器上,PARM是用毛坯分割的? 但是为什么呢?它们在双引号中 CALL PGM(QP2SHELL) + PARM('/USR/LOCAL/ZENDSVR/BIN/PHP-CLI' + '/www/zendsvr/htdocs/test/t1.php' +

使用Zendserver从IBMi服务器调用PHP 我向php脚本发送了一些参数。在我们的一台机器上,PARM是用毛坯分割的? 但是为什么呢?它们在双引号中

CALL       PGM(QP2SHELL) +                                
           PARM('/USR/LOCAL/ZENDSVR/BIN/PHP-CLI' +        
           '/www/zendsvr/htdocs/test/t1.php' +    
           'Hallo Test' + 'P2' + 'P3')
在PHP中,args数组包含

[0] => /www/zendsvr/htdocs/idsmail/t1.php5
[1] => Hallo
[2] => Test
[3] => P2                            
[4] => P3 
在其他机器上,相同的程序运行良好

有什么想法吗


再见jogi

如果您的示例与您的CL代码完全相同,那么您的符号太多了。在源代码中,CL命令通常在一行末尾终止。如果您的命令继续执行到另一行,则用
+
符号表示。在此上下文中,它不是一个表示串联运算符(即
| |
)。空格足以分隔参数

第四行不需要
+
符号,这将被视为算术运算符。这将解决您的问题:

CALL       PGM(QP2SHELL) +                                
           PARM('/USR/LOCAL/ZENDSVR/BIN/PHP-CLI' +        
           '/www/zendsvr/htdocs/test/t1.php' +    
           'Hallo Test'  'P2'  'P3')
PGM和PARM这两个关键词不是必需的,所以我个人会这样写:

CALL QP2SHELL  ('/USR/LOCAL/ZENDSVR/BIN/PHP-CLI' +        
                '/www/zendsvr/htdocs/test/t1.php' +    
                'Hallo Test' +
                'P2' +
                'P3' +
               )

我在你的代码中没有看到任何双引号。。。运行方式不同的机器-有没有可能它运行的是不同版本的操作系统?如果call语句的第4行实际上是这样的,那么您将出现语法错误,无法访问PHP。