Пространства имен предотвращают конфликты между классами, методами и объектами с тем же именем, которые могли быть написаны разными людьми.
Исходя из фона Java, вы, вероятно, знакомы с тем, как это достигается с помощью пакетов, например. вы можете создать класс movieyoda.DateUtils
, и я могу создать класс mikej.DateUtils
, и пакет позволяет использовать код, используя классы, чтобы различать их. (Python имеет нечто очень похожее .)
Пространства имен были добавлены в PHP в 5.3.0, но в более ранних версиях (и на других языках, которые не предоставляют пространства имен) у вас было бы для префикса имен классов и методов с чем-то, чтобы уменьшить риск столкновения имени. например a movieyoda_parse_file
.