PHP只打印字符串的某些部分

时间:2016-08-19 02:49:06

标签: php string substring trim

我的PHP字符串很少($ url1,$ url2,..),如下所示:

$url1 = "http://build:f9280396f83a0@mobile.com:8080/job/new-ios-2.1/buildWithParameters";

$url2 = "http://build:f9280396f83a0@mobile.com:8080/job/new-android-8.2/buildWithParameters";

如何在/job/之后和/buildWithParameters之前获取子字符串?以下是$ url1的预期输出:

new-ios-2.1

到目前为止,我已尝试使用substr函数:

例如,$url1 = substr($url, -10);。我无法通过这种方法找到上述所需的工作部分。有没有更好的方法在PHP中执行此操作?

2 个答案:

答案 0 :(得分:1)

您可以使用爆炸功能。第四个键的值将根据您的期望

$url1 = "http://build:f9280396f83a0@mobile.com:8080/job/new-ios-2.1/buildWithParameters";
$urlarr=explode('/', $url1);
print_r($urlarr);

答案 1 :(得分:1)

使用此正则表达式:

<xml<sfdc:create type="Account">
<sfdc:objects>
    <sfdc:object>
        <Name>MuleSoft</Name>
        <BillingStreet>I live here </BillingStreet>
        <BillingCity>My City</BillingCity>
        <BillingState>MA</BillingState>
        <BillingPostalCode>32423</BillingPostalCode>
        <BillingCountry>US</BillingCountry>
    </sfdc:object>
 .......200 such objects
</sfdc:objects>
</sfdc:create>

这将匹配第一次出现 preg_match('/\/job\/([^\/]*)\/buildWithParameters/', $url1, $matches); print_r($matches[1]); 和首次出现/job/

之间的字符串

查看演示here