簡體   English   中英

(AS3和PHP)從php向Flash發送多個值

[英](AS3 & PHP) sending multiple values from php to flash

我正在嘗試從PHP向Flash發送多個值。 我知道如何發回一個值,那就是使用PHP的printecho ,然后使用e.target.data.在閃存中e.target.data. , 例如...

PHP:

print "resultMessage=$something";

閃:

var resultText:TextField;
resultText.text = e.target.data.resultMessage;

問題是嘗試接收2個值時; 我已經嘗試過諸如...

PHP:

print "resultNumber=$somethingNumber";
print "resultName=$somethingName";

閃:

var flashNumber:TextField
flashNumber.text = e.target.data.resultNumber;
var flashName:TextField;
flashName.text = e.target.data.resultName;

但是,當我嘗試這樣做時, flashNumber最終會變成flashNumber和flashName混在一起,例如2Tom or 7Mary或類似的東西。 我嘗試在PHP的兩個值之間打印<br> ,但仍然得到相同的結果。 我知道我可以將PHP分成2個PHP文件並從每個文件中獲取一個值,但這有點荒謬,因為在我的程序中,我需要獲取許多值。

還有另一種方法可以將值從PHP發送到Flash,以便我可以發送多個值? 或者,是否可以使用printecho來發送多個值?

提前非常感謝您。

您可以通過以標准的URL編碼的變量格式輸出數據來做到這一點。 (您需要應用程序使用“&”號分隔變量-否則,它會認為first =之后的所有內容都是該值)

例如: print "resultNumber=$somethingNumber&resultName=$somethingName";

然后,AS3應該會自動按照您嘗試的方式工作。


您也可以按照其他人的建議輸出XML或JSON。

JSON

PHP

<?php
$arr = array(somethingName, somethingNumber);

echo json_encode($arr);
?>

AS3

var jsonObj = JSON.parse(e.target.data);
trace(jsonObj.somethingName, jsonObj.somethingNumber);

XML

PHP

<?php
$string = <<<XML
<data>
 <somethingName>
  blah blah blah
 </somethingName>
 <somethingNumber>
  12345
 </somethingNumber>
</data>
XML;

$xml = new SimpleXMLElement($string);

echo $xml->asXML();

?>

AS3

myXML = new XML(e.target.data);
trace(myXML.somethingName, myXML.somethingNumber);

最好使用某些數據格式,而不是將數據作為純文本傳遞-XML或JSON是一個好主意。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM