我正在使用wp_remote_post将一些信息发布到像这样...
$response = wp_remote_post( $validation_url, array(
'method' => 'POST',
'timeout' => 45,
'redirection' => 5,
'httpversion' => '1.0',
'blocking' => true,
'headers' => array(),
'body' => $fields,
'cookies' => array()
)
);
如果我这样做...
$validationresponse = $response['body'];
echo $validationresponse;
然后它正确地返回$response['body']的内容,看起来像这样。
100Successfull Validation
但是如果我然后尝试这样做...
echo substr($validationresponse, 1);
要返回第一个字符,那么它不起作用,而是返回这个......
?xml version="1.0"?>
我做错了什么,谁能建议发生了什么?
如果你只想减去第一个字符,请使用:
echo $validationresponse[0];
为了使您的代码正常工作(它返回从第二个字符开始的字符串的其余部分),您应该首先检查$validationresponse
长度是否为 2 个或更多字符。另外,尝试var_dump()(使用 var_dump() 而不是 print_r(),因为var_dump显示 NULL 和东西)结果,而不是按照参考说:
Returns the extracted part of string; or FALSE on failure, or an empty string.
另外,如果您有任何错误,请发布任何错误。
正如
您所写的那样 - echo substr($validationresponse, 1);
- 将返回以第二个字符开头的字符串的其余部分。如果你想要一个字符,你会使用 - echo substr($validationresponse, 1, 1);
.请参阅 http://php.net/substr。这就是你看到的情况吗?