我一直在嘗試訪問全局範圍內的局部變量。我試過global $var
方法,但似乎並不奏效。 我試圖訪問的變量是$word1Txt
變量。 這裏是我的代碼:如何在全局範圍PHP中訪問局部變量?
HTML:
<form class="form-inline" method="post">
<input class="form-control" type="text" placeholder="First Word" name="word1" autofocus>
<input class="form-control" type="text" placeholder="Second Word" name="word2" autofocus>
<input class="btn btn-primary form-submit" type="submit" value="Compare">
</form>
PHP:
<?php
require('./wordnik/Swagger.php');
$APIKey = '342eac9900e703079b0050d5f7008eab962195189e75bfbcb';
$client = new APIClient($APIKey, 'http://api.wordnik.com/v4');
if (!empty($_POST['word1'])) {
$word1 = $_POST['word1'];
$wordApi = new WordApi($client);
$word1 = $wordApi->getDefinitions($word1, null, null, 1);
global $word1Txt;
global $word10;
$word1Txt = $_POST['word1'];
$word10 = $word1[0]->text;
}
if (!empty($_POST['word2'])) {
$word2 = $_POST['word2'];
$wordApi = new WordApi($client);
$word2 = $wordApi->getDefinitions($word2, null, null, 1);
global $word2Txt;
global $word20;
$word2Txt = $_POST['word2'];
$word20 = $word2[0]->text;
}
print $word1Txt;
?>
JS:
$(document).ready(function() {
var word1Txt = <?php echo $word1Txt; ?>;
var word2Txt = <?php echo $word2Txt; ?>;
$('div.word1').prepend("<h3 class='header'>hi" + word1Txt + "</h3>");
$('div.word2').prepend("<h3 class='header'>hi" + word2Txt + "</h3>");
});
編輯: 我嘗試添加的var_dump($ _ POST);在if語句前面。我得到以下輸出。
array(2) { ["word1"]=> string(2) "hi" ["word2"]=> string(2) "no" }
Fatal error: Uncaught Exception: Unauthorized API request to
http://api.wordnik.com/v4/word.json/hi/definitions?limit=1:
unauthorized in
C:\xampp\htdocs\DictionaryCompare\wordnik\Swagger.php:111 Stack trace:
#0 C:\xampp\htdocs\DictionaryCompare\wordnik\WordApi.php(176): APIClient->callAPI('/word.json/hi/d...', 'GET', Array, NULL, Array) #1
C:\xampp\htdocs\DictionaryCompare\index.php(40):
WordApi->getDefinitions('hi', NULL, NULL, 1) #2 {main} thrown in
C:\xampp\htdocs\DictionaryCompare\wordnik\Swagger.php on line 111
不確定問題是什麼 - 您嘗試訪問什麼樣的變量以及在哪裏? – WEBjuju
@WEBjuju對不起。我編輯了我的問題。讓我知道如果你需要更多的信息:) – Njinx
它看起來不像你應該需要與此代碼全球。這裏包含的內容只有一個範圍。 –