另一种说法是源自晋国大夫解张,他的字是张侯,是晋文公时期的重臣。他的后代以其字为氏,也称为张氏。解张曾经辅佐晋文公灭掉了三晋之一的耿国,并在晋国内部斗争中屡立奇功。他的儿子张孟谈也是赵国著名的军师,曾经参与了长平之战和赵魏合纵等重大事件。
还有一种说法是源自改姓或赐姓。例如,三国时期魏国名将张辽原本是聂壹(马邑之谋发起者)的后人,为了避祸而改姓张。蜀国诸葛亮曾经赐姓张给云南南蛮酋长龙佑那。另外,在历史上还有很多外族如乌桓、女真、鲜卑、匈奴、契丹等改姓为汉姓张氏者。
从上面可以看出,张姓有着复杂而多元的来源,不同地区和民族的张姓可能有不同的血缘关系和祖先崇拜。