Я в значительной степени настроен на использование соглашения об именовании пакетов Java
com.website.app.whatever
но я не уверен, как лучше всего это сделать в PHP.
Вариант 1:
Создать структуру каталогов
com/
mysite/
myapp/
encryption/
PublicKeyGenerator.class.php
Cipher.class.php
Xml/
XmlHelper.class.php
XmlResponse.class.php
Теперь, как это делает Java, она использует папки для организации иерархии. Это, однако, немного неуклюже в PHP, потому что для него нет встроенной поддержки, и когда вы перемещаете вещи, вы нарушаете все.
Вариант 2
Называйте классы, используя точки для пакета, поэтому имена такие же, как в Java, но все они могут находиться в одном каталоге, что делает __autoload бризом.
classes/
com.mysite.myapp.encription.PublicKeyGenerator.class.php
com.mysite.myapp.encription.Cipher.class.php
com.mysite.myapp.xml.XmlHelper.class.php
com.mysite.myapp.xml.XmlResponse.class.php
Единственным реальным недостатком здесь является то, что все классы находятся в одной папке, что может сбивать с толку для больших проектов.
Разыскиваются мнения, какой из них лучше или есть еще лучшие варианты?