如何将 AS2 迁移到 AS3。?

How to migrate AS2 to AS3.?

如何将 ActionScript 2.0 代码转换为 ActionScript 3.0

这是代码:

    //***********************************************************
    var theXML:XML = new XML();
    theXML.ignoreWhite = true;
    theXML.onLoad = function() {
    var nodes = this.firstChild.childNodes;
    for (i=0;i<nodes.length;i++){
    theList.addItem(nodes[i].firstChild.nodeValue,i);
    }
    }

    theXML.load("http://localhost/conn.php");
    //***********************************************************

这是我的 PHP 代码,回显 的 XML 字符串:

echo "<?xml version=\"1.0\"?>\n"; 
echo "<name>\n"; 

while ( $line = mysql_fetch_assoc($res) ) 
{ echo "<item>" . $line["name"] . "</item>\n"; } 

echo "</name>\n"

使用 AS3,如何将 XML 字符串解析为具有节点的实际 XML 数据?

有很多how to work with XML in AS3, and how to migrate AS2 to AS3的例子。

这相当于您发布的内容:

var loader:URLLoader = new URLLoader();
loader.load(new URLRequest("http://localhost/conn.php"));
loader.addEventListener(Event.COMPLETE, loaderComplete);

function loaderComplete(e:Event):void {
    XML.ignoreWhitespace = true;
    var xml:XML = new XML(loader.data);
    var nodes:XMLList = xml.child(0).children();
    for (var i:int = 0; i < nodes.length(); i++) {
        theList.addItem(nodes[i].child(0).text());
    }
}

请注意,在 AS3 中,您可以按名称引用 XML 个节点,例如 xml.gallery.image[3].url 而不是 xml.child(0).children()[3].child(0),等等