我是PHP的新手,我正在尝试解决这个问题,即URL的中间位置发生变化。
例如使用这个假URL,
$url = 'http://www.bobsplace.com/events/georgetown/12354544233123';
我需要能够用随机变量替换“georgetown”。
所以我想我需要在事件之后切片URL,有一个变量“georgetown”,然后让其余的URL继续。我希望我尽可能多地有意义。
好的, 我尝试了所有这些并仍然出错,但很可能是由于我目前的编码。我现在正在进入整个事情。
<?
// This URL only shows future events
$url = 'https://graph.facebook.com/192674347443031/events?access_token=153420758043439|66d692f0e73ad17d939d9d9c-1045402872|8VHLfMb3gYY0p9fnT7wMS8Q9Krc&expires_in=0&since=yesterday' ;
$event_id = get_post_custom_values('facebook_id');
$url = str_replace('/192674347443031/', '/' . $event_id . '/', $url);
$json = file_get_contents($url) ;
$data = json_decode( $json,true) ;
//var_dump($data) ;
$sorted_array = array_reverse($data['data'], TRUE) ;
foreach ($sorted_array as $key => $value) {
//print_r($value) ;
?>
<? echo "<li><a href='http://facebook.com/event.php?eid=". $value['id'] . "' target='_blank'>" ;
echo "<h2>" . $value['name'] . "</h2>" ;
echo "</a>" ;
echo " (" . $value['location'] .") <br />" ;
echo date("F j, Y, g:i a" , strtotime($value['start_time'])) . " to " . date("F j, Y, g:i a" , strtotime($value['end_time'])) ;?>
<div class="moreinfo">
<? echo "<a href='http://facebook.com/event.php?eid=". $value['id'] . " ' target='_blank'>" ;
echo "<b>" . 'More info' . "</b>" ;
echo "</a>" ;?>
</div>
<? echo "</li>";
}
?>
我不断得到的错误现在说我的array_reverse()应该是一个数组。并且无效的参数foreach()
现在这不是该页面上的整个代码,但这是给我带来问题的片段。
答案 0 :(得分:5)
你可以这样做:
$url = 'http//:www.bobsplace.com/events/georgetown/12354544233123';
$my_var = 'foobar';
$url = str_replace("georgetown", $my_var, $url );
或:
$url = 'http//:www.bobsplace.com/events/georgetown/12354544233123';
$my_var = 'foobar';
$temp = explode( '/' , $url );
$temp[4] = $my_var;
$url = implode( '/' , $temp );
第一个将按名称替换,第二个将按URL中的位置替换。
答案 1 :(得分:0)
我想你想说你想要替换“georgetown”这个文字。如果这是正确的,下面的代码应该可以工作(确保你已经将$ replace定义为要替换它的内容):
$url = str_replace('/georgetown/', '/' . $replace . '/', $url);
答案 2 :(得分:0)
$variable = 'place'; //e.g. georgetown
$url = 'http:www.bobsplace.com/events/'.$variable.'/12354544233123';
我认为这就是你所要求的。