<p>In certain contexts, PHP may attempt to automatically convert the value type to a different value type. The following different contexts exist:</p> <p>Numeric context</p> <p>Term context</p> <p>Logical context</p> <p>Integer and string contexts</p> <p>Comparative context</p> <p>Function context.</p> <p>All programming languages have one or another type system, which regulates all possible varieties of values used in programs. The variety of types often reflects the existence of different bit-level representations of data in computer memory, although in many cases programmers are spared the need to consider what bit representation the data has (or even have no way of accessing such bit representations).</p> <p>PHP's type system is simple, elegant, and flexible; in addition, it eliminates the need for programmers to consider the details of low-level data storage implementations. PHP lets the programmer off the hook for most of the worries associated with defining variable types and values, first because it does not require typing variables, and second because it performs much of the type conversions automatically, on behalf of the programmer.</p>