Эта линия работает. Однако, когда я обновил свой контент, я случайно понял, что цикл теперь выполняется 50 раз. Поскольку он завершает свой цикл, то снова и снова запускает цикл. Я поместил исходный xml-вывод в текстовую область, просто чтобы убедиться, что XML не так уж и велик, и его нет. Прямо сейчас у меня есть максимальный XML в 50 записей, это может быть больше или меньше. Но мой вывод из цикла составляет 2500 записей, есть идеи, почему это произойдет? У меня никогда не было такого с любыми циклами, которые я делал в прошлом, если это не было циклом while, и я неправильно установил свои числа :-)

то я пытаюсь получить в настоящее время, это просто атрибут gd: email, который является «address =» только ничем иным на данный момент. Который я могу получить в части XML, черт возьми, я могу даже получить любое заданное мнение, если оно внутри тегов, но получить атрибут любого данного, как в моем случае ... Я полностью запутался. Раньше я знал, как это сделать, но это было так давно, когда я делал что-то непростое для использования XML. так что я все испортил сам

<?xml version='1.0' encoding='UTF-8'?>
    <feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:gContact='http://schemas.google.com/contact/2008' xmlns:batch='http://schemas.google.com/gdata/batch' xmlns:gd='http://schemas.google.com/g/2005'>
        <id>[email protected]</id>
        <updated>2011-06-30T00:07:48.706Z</updated>
        <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/contact/2008#contact'/>
        <title type='text'>Taco Bells's Contacts</title>
        <link rel='alternate' type='text/html' href='http://www.google.com/'/>
        <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full'/>
        <link rel='http://schemas.google.com/g/2005#post' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full'/>
        <link rel='http://schemas.google.com/g/2005#batch' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/batch'/>
        <link rel='self' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full?max-results=5'/>
        <link rel='next' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full?start-index=6&max-results=5'/>
        <author>
            <name>Taco Bell</name>
            <email>[email protected]</email>
        </author>
        <generator version='1.0' uri='http://www.google.com/mate/feeds'>Contacts</generator>
        <openSearch:totalResults>90</openSearch:totalResults>
        <openSearch:startIndex>1</openSearch:startIndex>
        <openSearch:itemsPerPage>5</openSearch:itemsPerPage>
        <entry>
            <id>http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/base/0</id>
            <updated>2010-01-27T00:11:57.430Z</updated>
            <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/contact/2008#contact'/>
            <title type='text'>Taco B</title>
            <link rel='http://schemas.google.com/contacts/2008/rel#edit-photo' type='image/*' href='http://www.google.com/mate/feeds/photos/media/xxxxxxxxxxxxxx%40gmail.com/0/8_XL_JoAPon1k7SNixI2iA'/>
            <link rel='http://schemas.google.com/contacts/2008/rel#photo' type='image/*' href='http://www.google.com/mate/feeds/photos/media/xxxxxxxxxxxxxx%40gmail.com/0'/>
            <link rel='self' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/0'/>
            <link rel='edit' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/0/1264551117430000'/>
            <gd:email rel='http://schemas.google.com/g/2005#other' address='[email protected]' primary='true'/>
        </entry>
        <entry>
            <id>http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/base/1</id>
            <updated>2007-08-01T18:02:04.410Z</updated>
            <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/contact/2008#contact'/>
            <title type='text'></title>
            <link rel='http://schemas.google.com/contacts/2008/rel#edit-photo' type='image/*' href='http://www.google.com/mate/feeds/photos/media/xxxxxxxxxxxxxx%40gmail.com/1/1B2M2Y8AsgTpgAmY7PhCfg'/>
            <link rel='self' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/1'/>
            <link rel='edit' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/1/1185991324410001'/>
            <gd:email rel='http://schemas.google.com/g/2005#other' address='[email protected]' primary='true'/>
        </entry>
        <entry>
            <id>http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/base/2</id>
            <updated>2010-01-27T00:11:57.430Z</updated>
            <categor,y scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/contact/2008#contact'/>
            <title type='text'>Steve Sattler</title>
            <link rel='http://schemas.google.com/contacts/2008/rel#edit-photo' type='image/*' href='http://www.google.com/mate/feeds/photos/media/xxxxxxxxxxxxxx%40gmail.com/2/1B2M2Y8AsgTpgAmY7PhCfg'/>
            <link rel='self' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/2'/>
            <link rel='edit' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/2/1264551117430000'/>
            <gd:email rel='http://schemas.google.com/g/2005#other' address='[email protected]' primary='true'/>
        </entry>
        <entry>
            <id>http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/base/3</id>
            <updated>2010-01-27T00:11:57.430Z</updated>
            <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/contact/2008#contact'/>
            <title type='text'>Michael Montana</title>
            <link rel='http://schemas.google.com/contacts/2008/rel#edit-photo' type='image/*' href='http://www.google.com/mate/feeds/photos/media/xxxxxxxxxxxxxx%40gmail.com/3/1B2M2Y8AsgTpgAmY7PhCfg'/>
            <link rel='self' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/3'/>
            <link rel='edit' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/3/1264551117430000'/>
            <gd:email rel='http://schemas.google.com/g/2005#other' address='[email protected]' primary='true'/>
        </entry>
        <entry>
            <id>http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/base/4</id>
            <updated>2007-08-01T18:02:04.410Z</updated>
            <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/contact/2008#contact'/>
            <title type='text'></title>
            <link rel='http://schemas.google.com/contacts/2008/rel#edit-photo' type='image/*' href='http://www.google.com/mate/feeds/photos/media/xxxxxxxxxxxxxx%40gmail.com/4/1B2M2Y8AsgTpgAmY7PhCfg'/>
            <link rel='self' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/4'/>
            <link rel='edit' type='application/atom+xml' href='http://www.google.com/mate/feeds/contacts/xxxxxxxxxxxxxx%40gmail.com/full/4/1185991324410001'/>
            <gd:email rel='http://schemas.google.com/g/2005#other' address='[email protected]' primary='true'/>
        </entry>
    </feed>

с кодом, который выглядит как (это весь сценарий (в настоящее время))

$user = "[email protected]";
$password = "xxxxxxxxxxxx";

// ref: http://code.google.com/apis/accounts/docs/AuthForInstalledApps.html

// step 1: login
$login_url = "https://www.google.com/accounts/ClientLogin";
$fields = array(
    'Email' => $user,
    'Passwd' => $password,
    'service' => 'cp', // <== contact list service code
    'source' => 'test-google-contact-grabber',
    'accountType' => 'GOOGLE',
);

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,$login_url);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS,$fields);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
$result = curl_exec($curl);

$returns = array();

foreach (explode("\n",$result) as $line)
{
    $line = trim($line);
    if (!$line) continue;
    list($k,$v) = explode("=",$line,2);

    $returns[$k] = $v;
}

curl_close($curl);

// step 2: grab the contact list
$feed_url = "http://www.google.com/m8/feeds/contacts/$user/full?&max-results=5";

$header = array(
    'Authorization: GoogleLogin auth=' . $returns['Auth'],
);

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $feed_url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 

$result = curl_exec($curl);
curl_close($curl);

$doc = new DOMDocument();
$doc->load($result);
$arrFeeds = array();
foreach ($doc->getElementsByTagName('entry') as $node) {
    $monkey = $node->getAttribute('{gd:email}');
    $itemRSS = array($monkey->nodeValue);
array_push($arrFeeds, $itemRSS);
}
array_unique($arrFeeds);

Ответы на вопрос(2)

Ваш ответ на вопрос