首页 > 解决方案 > 在 PHP 中使用参数调用外部 url

问题描述

我一直在努力使用参数从 PHP(提交时)调用外部 url。我看过不同的选项(curlfile_get_contents),但似乎没有任何效果。

这是最终 url 的样子:

http://XXXXX:8080/job/Clone_CentOS_VM/buildWithParameters?token=smlvyKf6tS&vm_user=temp&memory_mb=1024&num_cpus=1&eth0_ip=172.XX.XX.XXX&eth1_ip=192.XX.XX.XX

使用参数,它看起来是这样的:

http://XXXXX:8080/job/Clone_CentOS_VM/buildWithParameters?token=smlvyKf6tS&vm_user=$login&memory_mb=$memory&num_cpus=$cpu&eth0_ip=$ip_172&eth1_ip=$ip_192";

标签: phpurlcurl

解决方案


您没有转义创建 URL 时使用的变量。如果将变量放在字符串中,则需要说明变量是什么以及字符串是什么。

例如,您可以在变量周围使用括号:

$url = "http://XXXXX:8080/job/Clone_CentOS_VM/buildWithParameters?token=smlvyKf6tS&vm_user={$login}&memory_mb={$memory}&num_cpus={$cpu}&eth0_ip={$ip_172}&eth1_ip={$ip_192}";

或者从字符串中排除它们:

$url = "http://XXXXX:8080/job/Clone_CentOS_VM/buildWithParameters?token=smlvyKf6tS&vm_user=" . $login . "&memory_mb=" . $memory . "&num_cpus=" . $cpu . "&eth0_ip=" . $ip_172 . "&eth1_ip=" . $ip_192;

推荐阅读