I want to rotate my character 90 degrees but set the value of the rotation to 0

I am trying to make a 2d game but when I move my character he is looking away from the camera and when I go the other way he looks towards the camera and not right and left (the way I want it to look). I am an amatuer at scripting so this is the c# script I used for the player controls. Please help me solve this.

using UnityEngine;
using System.Collections;

[RequireComponent(typeof(PlayerPhysics))]
public class PlayerController : MonoBehaviour {
	
	// Player Handling
	public float gravity = 20;
	public float walkSpeed = 8;
	public float runSpeed = 12;
	public float acceleration = 30;
	public float jumpHeight = 12;
	
	private float animationSpeed;
	private float currentSpeed;
	private float targetSpeed;
	private Vector2 amountToMove;
	
	private PlayerPhysics playerPhysics;
	private Animator animator;
	
	
	void Start () {
		playerPhysics = GetComponent<PlayerPhysics>();
		animator = GetComponent<Animator>();
	}
	
	void Update () {
		// Reset acceleration upon collision
		if (playerPhysics.movementStopped) {
			targetSpeed = 0;
			currentSpeed = 0;
		}
		
		// If player is touching the ground
		if (playerPhysics.grounded) {
			amountToMove.y = 0;
			
			// Jump
			if (Input.GetButtonDown("Jump")) {
				amountToMove.y = jumpHeight;	
			}
		}
		
		// Set animator parameters
		animationSpeed = IncrementTowards(animationSpeed,Mathf.Abs(targetSpeed),acceleration);
		animator.SetFloat("Speed",animationSpeed);
		
		// Input
		float speed = (Input.GetButton("Run"))?runSpeed:walkSpeed;
		targetSpeed = Input.GetAxisRaw("Horizontal") * speed;
		currentSpeed = IncrementTowards(currentSpeed, targetSpeed,acceleration);
		
		// Set amount to move
		amountToMove.x = currentSpeed;
		amountToMove.y -= gravity * Time.deltaTime;
		playerPhysics.Move(amountToMove * Time.deltaTime);
		
		// Face Direction
		float moveDir = Input.GetAxisRaw("Horizontal");
		if (moveDir !=0) {
			transform.eulerAngles = (moveDir>0)?Vector3.up * 180 :Vector3.zero;
		}
		
	}
	
	// Increase n towards target by speed
	private float IncrementTowards(float n, float target, float a) {
		if (n == target) {
			return n;	
		}
		else {
			float dir = Mathf.Sign(target - n); // must n be increased or decreased to get closer to target
			n += a * Time.deltaTime * dir;
			return (dir == Mathf.Sign(target-n))? n: target; // if n has now passed target then return target, otherwise return n
		}
	}
}

I am not sure if this was what you needed but instead of doing this by a script you can reset the orientation of a game object by making a empty game object and putting the visuals your player as a child. Then rotate your visuals to face the correct way, have the script act on the parent object.

That way you have corrected the rotation without changing your script to do something it was not designed for.

Here is a link to some unity documentation explaining the method: Unity - Manual: Importing assets