public function AdAudience($name,$desc='',$emaillist='',$idgr =''){
$audience_id = '';
try {
require_once dirname(dirname(__FILE__)) . '/Google/init.php';
$user = new AdWordsUser();
$user->LogAll();
$EMAILS = array();
foreach ($emaillist as $key => $value) {
$EMAILS[]=$value;
}
$userListService = $user->GetService('AdwordsUserListService',
ADWORDS_VERSION);
$userList = new CrmBasedUserList();
$userList->id = $idgr;
$operation = new UserListOperation();
$operation->operand = $userList;
$operation->operator = 'SET';
$operations = array($operation);
$result = $userListService->mutate($operations);
$userListAdded = $result->value[0];
$audience_id = $idgr;
$userListId = $idgr;
$mutateMembersOperation = new MutateMembersOperation();
$operand = new MutateMembersOperand();
$operand->userListId = $userListId;
// You can optionally provide this field.
$operand->dataType = 'EMAIL_SHA256';
$emailHashes = array();
foreach ($EMAILS as $email) {
$emailHashes[] = hash('sha256', strtolower(trim($email)));
}
$operand->members = $emailHashes;
$mutateMembersOperation->operand = $operand;
$mutateMembersOperation->operator = 'SET';
$mutateMembersOperations = array($mutateMembersOperation);
$mutateMembersResult =
$userListService->mutateMembers($mutateMembersOperations);
} catch (Exception $e) {
printf("An error has occurred: %s\n", $e->getMessage());
}
return array(
"id"=>$audience_id,
"name"=>$name
);
}