0

在这个test.php页面中,我有这行文本

server=span.growler.ro&provider=-1&providersSerial=4&country=RO&mobile=0&token=eae5b2c50c123425d9351d8c8ee80b9a27ca3d69f15a669454b937eb

在另一个 test1.php?id=token页面中,我运行了这个 php 代码

<?php 
$Text=file_get_contents("./test.php"); 
if(isset($_GET["id"])){ $id = $_GET["id"]; 
$regex = "/".$id."=\'([^\']+)\'/"; 
preg_match_all($regex,$Text,$Match); 
$fid=$Match[1][0]; 
echo $fid; } else { echo ""; } ?>

我只需要令牌

eae5b2c50c123425d9351d8c8ee80b9a27ca3d69f15a669454b937eb

在 test1.php?id=token 上显示

如果在 test.php 中,令牌看起来像这样

令牌='eae5b2c50c123425d9351d8c8ee80b9a27ca3d69f15a669454b937eb'

有用。

我需要在其他网页上工作

4

3 回答 3

0

与 preg_match 一起使用将对您有所帮助。

$string ='server=span.growler.ro&provider=-1&providersSerial=4&country=RO&mobile=0&token=eae5b2c50c123425d9351d8c8ee80b9a27ca3d69f15a669454b937eb';
preg_match('/token=([a-f0-9]+)/i',$string,$matches);
echo $matches[1]; 

这将返回您:

'eae5b2c50c123425d9351d8c8ee80b9a27ca3d69f15a669454b937eb'
于 2013-05-24T13:14:05.420 回答
0

我建议您使用preg_match而不是 preg_match_all

试试这个正则表达式:

$regex = "/&?token=([a-f0-9]*)&?/;
于 2013-05-24T13:14:18.503 回答
0
$str = 'server=span.growler.ro&provider=-1&providersSerial=4&country=RO&mobile=0&token=eae5b2c50c123425d9351d8c8ee80b9a27ca3d69f15a669454b937eb';
parse_str($str, $vars);
$token = $vars['token'];
于 2013-05-24T13:11:06.777 回答