As a player, Zheng played most of his career for Chinese Super League club Guangzhou, becoming their captain and serving also as their caretaker manager in two stints.
After starting his career as a defender, Zheng was later moved into a central midfield role by then head coach Zhu Guanghu at Shenzhen Jianlibao and experienced immediate success there by winning the 2004 league title with the club.
[3] While he was initially deployed as a defender, he shifted into a more of a playmaker role and aided Shenzhen to the top tier title for the first time in the club's history.
[4] On 29 December 2006, Zheng was loaned out to Premier League side Charlton Athletic until the end of the season with an option to buy.
He made his debut for the club on 10 February 2007 in a 2–0 loss against Manchester United, coming on as a substitute for Amdy Faye.
[10] Then manager Tony Mowbray affirmed his long held admiration for Zheng and expressed his delight at the signing.
In the 2010 season, Zheng scored five goals in 11 appearances as Guangzhou finished first place in the second division and won promotion back to the top tier.
In November 2013, Zheng captained Guangzhou to victory in the 2013 AFC Champions League Final as the club became the first Chinese club ever to win the AFC Champions League, and Zheng Zhi played the full game of the final, lifting the silverware as the captain.
[19] On 27 October 2019, Zheng became the caretaker of the club when manager Fabio Cannavaro was temporarily relieved of his position and sent to corporate culture training until 3 November 2019.
[27] On 16 June 2023, the Chinese FA held a retirement ceremony for Zheng prior to the national team's 4-0 win against Myanmar in Dalian.