Can I use MacBook UDID registration for testing of iPhone application? I am not having any iPhone ,I have MacBook and have my developer account.

For archiving the app developed for iPhone I need to have provisioning profile, can it be done by using registering MacBook with it's UDID or not?

if not then what is the solution for the same?

One more question how many Apple devices can be registered in a developer account?
You cannot use a MacBook as the hardware device for getting an iPhone UDID, no. As there's no need for you to actual own the device you're adding the UDID for, you can get an UDID from a friend's phone or similar.

Note that you can create a distribution provisioning profile in the developer portal without having any physical devices registered. So there's not need for an iPhone UDID in order to for example archiving an app for TestFlight.

You can register up to 100 devices of each type in the developer account. You have the chance to reset the list once per year to remove irrelevant devices. You can find the specification from Apple at this page:

https://developer.apple.com/support/account/ 

Look under the heading "Resetting Your Device List Annually".