The general rule is that an employee will be set up in the state in which the work is performed regardless of where they reside.
Some states have agreements to withhold for each other - reciprocity. In that case residents of another state can have their resident state withheld from the state that the work is performed.
Only when there is reciprocity is the state income tax of the resident state taken out.
For more information see http://www.payroll-taxes.com/articles/state-tax-reciprocal-agreements
"if you are a New Jersey resident and Pennsylvania income tax was withheld from wages you earned there, you must file a Pennsylvania return to obtain a refund. To stop the withholding of Pennsylvania income tax, New Jersey residents who receive compensation from Pennsylvania must complete Form REV-419, Employee's Nonwithholding Application Certificate, and give it to their employer. More information is available on the Pennsylvania Department of Revenue Web site or by calling 1-717-787-8201."
You wrote " Am I correct that if the business is located in Pennsylvania and the employee works at the office in Pennsylvania for more than half a year,..."
If an employee worked in PA for seven months and then moved to Michigan and worked there for the last five months there would be PA state tax withheld for the first seven months and MI withholding for the last five months. That is, the entire year can not be determined from just more than half the year. Employees that work at more than one location (except for temporary assignment) may have to have more than one state income tax withheld during the year.
Please ask if you need more discussion or clarification.