前提・実現したいこと
現在zendframework3でPHPの開発を行っています。
コントローラーで毎回自作のclassを
require_once('module/app/src/libs/hogehoge.php');
require_once('module/app/src/libs/hagehage.php');
のように読み込んで作成しています。
このように記述せず、画面ロード時に必要なファイルは全て読み込んでおきたいのですが、
どのように実装すればよいのでしょうか?
試したこと
Composerを使用してzendのクラスは読みこんでいます。
Composerに自分の作ったクラスを追加してみたのですが
やり方がおかしいのかうまくいきません。
該当のソースコード
JSON
1composer.json 2 "autoload": { 3 "psr-4": { 4 "Application\": "module/app/src/" 5 } 6 },
PHP
1autoload_psr4.php 2 3return array( 4 'Zend\View\' => array($vendorDir . '/zendframework/zend-view/src'), 5 'Zend\Feed\' => array($vendorDir . '/zendframework/zend-feed/src'), 6 'Zend\Debug\' => array($vendorDir . '/zendframework/zend-debug/src'), 7 ・・・(以下zendのファイルの読み込みが続く) 8 'Application\'=> array($baseDir . '/module/app/src'), 9 (↑ これが上記で毎回require_onceしているファイル群) 10);
PHP
1autoload_static.php 2 3 public static $prefixLengthsPsr4 = array( 4 'Z' => 5 array( 6 'Zend\View\' => 10, 7 'Zend\Validator\' => 15, 8 ・・・(zendのファイル軍) 9 ), 10 'A' => 11 array( 12 'Application\' => 12, 13 ), 14 15 ); 16 public static $prefixDirsPsr4 = array( 17 'Zend\View\' => 18 array( 19 0 => __DIR__ . '/..' . '/zendframework/zend-view/src', 20 ), 21 'Zend\Feed\' => 22 array( 23 0 => __DIR__ . '/..' . '/zendframework/zend-feed/src', 24 ), 25 (・・・zendのファイル軍) 26 'Application\' => 27 array( 28 0 => __DIR__ . '/../..' . '/module/app/src', 29 30 ), 31 32 ); 33
試したこと
上記のファイルに記入しただけでは動かないのでしょうか?
netbeansを使用しているのですが、上記のファイルに追加記述して
メニューのコンポーザ→更新すると何度やっても記述が消えているので、
ファイルを更新しただけで動かしていました。
一応XAMPPの再起動やキャッシュを行っています
(このやり方でzendのファイルは追加使用可能でした)
→
メニューのコンポーザ→「自己更新」で更新できましたがうまくいきませんでした。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。