Manchester City have completed the signing of Real Madrid's Danilo on a five-year contract for a fee of £26.5m after the two clubs reached an agreement over the transfer of the Brazilian defender in midweek.