I’m a php developer working on a startup, and my friend,
my partner(a developer also), who is building the startup with me,
is an asp.net/C# developer.
How do we work together collaboratively, as we program in two distinct languages? I know you can use Mono http://mono-project.com to design android applications, (which is java based) by writing C# codes and iOS.
Is there any platform or framework we can use to create php apps by writing codes in C# or a framework that can convert C# codes to php, just like Mono?
You should learn ASP.NET/C#. The fact that you say you’re a “PHP developer” hints that it’s your only language; learning C# will be both a great learning experience and a good career move. If possible, pair with your friend using one monitor and two keyboards. Take turns typing code and asking questions. Jon Skeet’s book, C# in Depth, is excellent. If it feels too advanced, try Head First C#.
2
The short answer is no, there isn’t.
You (or he) could produce a web API that the other could use for website / mobile apps or there are frameworks like Phalanger that you can compile assemblies in PHP to use with with other .Net languages (C#, VB.Net, F# etc). Note: I’ve not used Phalanger (so please don’t take it as a recommendation) and it doesn’t convert between languages.
To work in the same project C# and PHP are worlds apart in many respects (for example C# enforces type safety) and a lot of work goes into keeping code, data and presentation/markup separate. A best practice that in my experience of PHP (mostly WordPress plugins) is possible but rarely happens, and more so in the types of code snippets that most people learn PHP from.
Ultimately it would be a lot of effort for little return to keep writing both and at most all you could do is produce assemblies for each other to use which is just going to make life difficult eventually. The books Syrion recommends in his answer are a great start if you want to expand your horizons, otherwise you’ll have to try & tempt a C# dev to PHP.
2
If you both are going to work on a shared codebase, the only sensible way is to use a language you both master.
The best option, by far, is to learn each others’ language. Not only will this give you two shared languages to work with (which means you can choose the most appropriate one for the job at hand), learning new languages is essential to becoming a versatile developer with an eye for the big picture and a nice big toolbox full of alternatives to pick from.
Another option is to both learn a third language. This is especially interesting when neither language is a good fit for whatever it is you’re going to build: both PHP and C# have some serious downsides, and it might just turn out that, say, Python could be the best language for your project. Again, learning a new programming language is always a good investment, even if you end up not using it.
A third option would be to strictly split up the codebase into a C# part and a PHP part, and define language-agnostic interfaces between them. For example, you could have a C# front-end that talks to a PHP server over a RESTful API. This is seldom a good choice, though, and it will make your team structure overly rigid: you can’t just jump in and help with the other half of the project, because it’s in a language you don’t know. It also means the both of you will have a huge bus factor, so I suggest you don’t do this.
TL;DR: Just get your act together and learn each other’s language.