有一个特定的地址格式化编辑器插件,看起来对我自己的项目(不是Drupal)非常有用,称为commerceguys/addressing
(https://www.versioneye.com/php/commerceguys:addressing/0.8.4)。
所以我习惯了作曲家,我只是在我的项目中需要它,但它似乎没有像我正在使用的所有其他作曲家包一样运作。我不确定这是否与Drupal特别相关,我只提及因为他们的自述文件提到这是一个Drupal模块(但因为它可以通过作曲家使用,我认为它可能有效)。根据他们的文档,我使用以下代码
use CommerceGuys\Addressing\Address;
use CommerceGuys\Addressing\Formatter\PostalLabelFormatter;
use CommerceGuys\Addressing\AddressFormat\AddressFormatRepository;
use CommerceGuys\Addressing\Repository\CountryRepository;
use CommerceGuys\Addressing\Subdivision\SubdivisionRepository;
$addressFormatRepository = new AddressFormatRepository();
$countryRepository = new CountryRepository();
$subdivisionRepository = new SubdivisionRepository();
// Defaults to text rendering. Requires setting the origin country code
// (e.g. 'FR') through the constructor or the setter, before calling format().
$formatter = new PostalLabelFormatter($addressFormatRepository, $countryRepository, $subdivisionRepository, 'FR', 'fr');
$address = new Address();
$address = $address
->withCountryCode('US')
->withAdministrativeArea('CA')
->withLocality('Mountain View')
->withAddressLine1('1098 Alta Ave');
echo $formatter->format($address);
但是这给了我这个错误
致命错误:未捕获错误:第8行/media/sf_domains/coolproject.com/public_html/coolfile.php中找不到类'CommerceGuys \ Addressing \ AddressFormat \ AddressFormatRepository'
安装似乎没有任何问题,所有“commerceguys”文件都位于“vendor”文件夹中的正确位置。我有大约6个左右通过作曲家安装的东西,没有任何问题。我错过了什么?
答案 0 :(得分:0)
实际上,当涉及到"使用"时,他们的文档看起来很简单。条款。在文件本身中手动搜索它们之后,我想出了
use CommerceGuys\Addressing\Model\Address;
use CommerceGuys\Addressing\Formatter\DefaultFormatter;
use CommerceGuys\Addressing\Repository\AddressFormatRepository;
use CommerceGuys\Addressing\Repository\CountryRepository;
use CommerceGuys\Addressing\Repository\SubdivisionRepository;
现在实际上工作得很好。