I see a whole lot of websites using the blockchain API to create bitcoin wallets (if i am correct), send and receive payments, I know how to ordinarily make a payment system using C#/MSSQL or PHP/MySQL but it seems a whole lot of things are different implementing the blockchain API, hence I wanted to know how can I go about setting up a wallet, like using PHP to implement an online wallet so I can create user accounts, create wallets, send payment from my site (which has a wallet) to another bitcoin wallet on another site, since I think all of them actually use the same blockchain API, any ideas how to go about something like this?
The question is pretty general in that you may be using Blockchain API in the generic way. Blockchain.info is a company that provides an API to use on the Bitcoin network. If you want to write applications using that API can read about it here. https://blockchain.info/api/
Along with that API you could look into other services like BitPay or even Stripe which provide ways to accept Bitcoin payments without having to know a lot of detail on the protocol.
If you're using Blockchain API in a generic sense and want your website to not be dependant on external companies and APIs you would run a full node yourself.
Bitcoin full nodes allow communication via RPC calls to create wallets, transactions etc.. There are many examples of how to connect to a bitcoin node via RPC with PHP. You would run the node on TestNet so you can build and test without fear of losing money to errors or fees.
Bitcoin Core is the obvious choice for a full node, but I would also look at bcoin implementation if I were doing significant wallet management.