我正在学习角度,我有一个角度表达式{{movie.title}},它输出电影标题。如果我把它包含在某些PHP中
$movTitle = "{{movie.title}}";
echo $movTitle;
它打印电影标题。但是,如果我将$ movTitle发送给一个函数,它就不会被解析。
$movieArray = $imdb->getMovieInfo("$movTitle"); // doesn't get movie info
// $movieArray = $imdb->getMovieInfo("Scarface"); // gets movie info
关于将电影片名发送到php函数的最佳方法的任何想法?
- 更新 -
我认为这可能是我想念的一些简单但是因为它看起来有点复杂,我已经添加了更多上下文的页面代码。我正在声明组件templateUrl:'movie.component.php',这就是那个文件。
<?php
include("/path/imdb.php");
?>
<div *ngIf="movie">
<div class="panel panel-default">
<div class="panel-heading">
<h1>{{movie.title}}</h1>
</div>
<div class="panel-body">
<div class="row">
<div class="col-md-5">
<img class="thumbnail" src="http://image.tmdb.org/t/p/w500/{{movie.poster_path}}">
</div>
<div class="col-md-7">
<ul class="list-group">
<li class="list-group-item">Genres: <span *ngFor="let genre of movie.genres">{{genre.name}}</span></li>
<li class="list-group-item">Release Date: {{movie.release_date}}</li>
</ul>
<br>
<a *ngIf="movie.homepage" href="{{movie.homepage}}" target="_blank" class="btn btn-default">Visit Movie Website</a>
<?php
$movTitle = "{{movie.title}}";
$imdb = new Imdb();
$movieArray = $imdb->getMovieInfo("$movTitle");
echo '<table align=center style="color:white;font-family:verdana;font-size:15px;line-height:1.7;" cellpadding="30" cellspacing="1" border="1" width="100%" align="center">';
foreach ($movieArray as $key=>$value){
$value = is_array($value)?implode("<br />", $value):$value;
echo '<tr>';
echo '<th align="left" valign="top">' .
str_replace("_"," ",strtoupper($key)) . '</th><td>' . $value .
'</td>';
echo '</tr>';
}
echo '</table>';
?>
</div>
</div>
</div>
</div>
</div>
IMDB功能可导入有关该电影的其他详细信息。我希望这个功能在这个页面上执行。我想我需要将php放在后面,使用$ http发布电影标题,然后在页面上呈现返回的数据(表格)。
答案 0 :(得分:0)
您需要使用AngularJs向PHP后端的端点发出请求,并且您将发送电影标题以及此请求。您可以在此处查看:https://www.w3schools.com/angular/angular_http.asp以获取有关如何使用Angular中的$ http服务执行ajax请求的参考。