def get_english_chapter_count(book):
    """
    A helper function to return the number of chapters in a given book in the English version of the Bible.

    :param book: Name of the book
    :type book: str
    :return: Number of chapters in the book. 0 usually means an invalid book or unsupported translation.
    :rtype: int

    >>> get_english_chapter_count('Ecclesiastes')
    12
    >>> get_english_chapter_count('Barnabas')
    0
    >>> get_english_chapter_count('Song of Solomon')
    8
    >>> get_english_chapter_count('Psalms')
    150
    >>> get_english_chapter_count('Philippians')
    4
    """
    # Standardise letter casing to help find the key easier
    book_name = book.title()

    if book_name == 'Song Of Solomon':
        # Song Of Songs has an alternate name
        book_name = 'Song Of Songs'
    elif book_name == 'Psalms':
        # Psalm and its plural variation are basically the same book, but prefer the singular variant
        book_name = 'Psalm'
    elif book_name == 'Philippians':
        # Prefer the spelling variation with two L's, partly for backwards compatibility with previous versions
        book_name = 'Phillippians'

    # This is the default mapping of books to their chapter counts
    chapter_count_mappings = {
        'Genesis': 50,
        'Exodus': 40,
        'Leviticus': 27,
        'Numbers': 36,
        'Deuteronomy': 34,
        'Joshua': 24,
        'Judges': 21,
        'Ruth': 4,
        '1 Samuel': 31,
        '2 Samuel': 24,
        '1 Kings': 22,
        '2 Kings': 25,
        '1 Chronicles': 29,
        '2 Chronicles': 36,
        'Ezra': 10,
        'Nehemiah': 13,
        'Esther': 10,
        'Job': 42,
        'Psalm': 150,
        'Proverbs': 31,
        'Ecclesiastes': 12,
        'Song Of Songs': 8,
        'Isaiah': 66,
        'Jeremiah': 52,
        'Lamentations': 5,
        'Ezekiel': 48,
        'Daniel': 12,
        'Hosea': 14,
        'Joel': 3,
        'Amos': 9,
        'Obadiah': 1,
        'Jonah': 4,
        'Micah': 7,
        'Nahum': 3,
        'Habakkuk': 3,
        'Zephaniah': 3,
        'Haggai': 2,
        'Zechariah': 14,
        'Malachi': 4,
        'Matthew': 28,
        'Mark': 16,
        'Luke': 24,
        'John': 21,
        'Acts': 28,
        'Romans': 16,
        '1 Corinthians': 16,
        '2 Corinthians': 13,
        'Galatians': 6,
        'Ephesians': 6,
        'Phillippians': 4,
        'Colossians': 4,
        '1 Thessalonians': 5,
        '2 Thessalonians': 3,
        '1 Timothy': 6,
        '2 Timothy': 4,
        'Titus': 3,
        'Philemon': 1,
        'Hebrews': 13,
        'James': 5,
        '1 Peter': 5,
        '2 Peter': 3,
        '1 John': 5,
        '2 John': 1,
        '3 John': 1,
        'Jude': 1,
        'Revelation': 22
    }
    if book_name not in chapter_count_mappings.keys():
        return 0
    return chapter_count_mappings[book_name]