Kategori: Zend Framework

Zend Framework Per-Modul pengaturan berdasarkan

Dengan , Jumat 1 Januari 2010 10:40

Saya telah membuat tindak lanjut untuk posting ini yang memerlukan konfigurasi kurang, silakan lihat Modul Tata Letak Berdasarkan - Zend Framework .

Bila menggunakan kerangka Zend dengan modul, yang nyata bahwa jika Anda menjalankan berbagai (sub-) situs dari aplikasi yang sama Anda tidak perlu menginginkan hal yang sama script tata letak untuk setiap bagian. Aku memutuskan untuk pergi dengan struktur situs berikut:

  / Aplikasi
     / Pengendali
         ...
     / Model
     / Modul
         / Default
             / Pengendali
             / Tata letak
                 / Script
             / Views
                 / Script
         / AnotherModule
             ...
     / Script

Masalahnya adalah menyiapkan script tata letak pada basis per-modul. Jawabannya datang melalui menggunakan Penolong Aksi. Menyiapkan layout pada basis per-modul melibatkan tiga langkah:

  1. Application.ini (atau setup konfigurasi serupa):
      admin.resources.layout.layoutPath = APPLICATION_PATH "/ modules / admin / layouts / script"
     default.resources.layout.layoutPath = APPLICATION_PATH "/ modul / default / layouts / script"
     member.resources.layout.layoutPath = APPLICATION_PATH "/ modules / anggota / layouts / script"
     affiliate.resources.layout.layoutPath = APPLICATION_PATH "/ modules / afiliasi / layouts / script" 
  2. Buat Helper Tindakan Anda:
      <? Php
     / **
      * Mengatur jalur tata letak pada basis per-modul
      *
      * @ Author Lloyd Watkin <lloyd@evilprofessor.co.uk>
      * @ Sejak 2010-01-01
      * /
     kelas Pro_Controller_Action_Helper_SetLayoutPath
         meluas Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Mengatur jalur tata letak berdasarkan modul
          * /
         fungsi publik preDispatch ()
         {
        	 $ Modul = $ this-> getRequest () -> getModuleName ();
    
    	     if ($ bootstrap = $ this-> getActionController ()
    	                        -> GetInvokeArg ('bootstrap')) {
    
    	         $ Config = $ bootstrap-> getOptions ();
    
    	         if (isset ($ config [$ modul] ['sumber'] ['tata letak'] ['layoutPath'])) {
    	             $ LayoutPath =
    	                  [Modul $] $ config ['sumber'] ['tata letak'] ['layoutPath'];
    	             $ This-> getActionController ()
    	                  -> GetHelper ('tata letak')
    	                  -> SetLayoutPath ($ layoutPath);
    	         }
        	 }
         }
     } 
  3. Dan terakhir boostrap helper tindakan:
      ...
         / **
          * Mengatur tata letak script pada basis per-modul
          * /
         dilindungi fungsi _initLayoutHelper ()
    	 {
    	     $ This-> bootstrap ('frontController');
    	     $ Layout = Zend_Controller_Action_HelperBroker:: addHelper (
    	         baru Pro_Controller_Action_Helper_SetLayoutPath ());
    	 }
     ... 

Ajaran: DateTime standar NOW ()

Dengan , Rabu 30 Desember 2009 06:30

Aku sudah berjuang dengan menyiapkan skema database untuk baru Zend Framework proyek. Aku menggunakan mencoba untuk menggunakan Ajaran ORM untuk model database saya. Aku perlu menyiapkan skema sehingga memungkinkan saya untuk menetapkan tanggal dan waktu standar untuk kolom `datetime`, misalnya saat menambahkan pesan baru saya mendapatkan timestamp saat ini. Setelah lama mencari dan bereksperimen saya menemukan solusi jadi aku berbagi.

Dalam skema Anda YAML file hanya lakukan hal berikut:

 Pesan:
   actAs:
     Timestampable:
       dibuat:
         Nama: created_at
         Jenis: timestamp
         Format: Ymd H: i: s
       diperbarui:
         Nama: last_updated
         Jenis: timestamp
         Format: Ymd H: i: s
   kolom:
     id:
       Jenis: integer
       utama: true
       autoincrement: true
     nama: string (255)
     email: string (300)
     pesan: string (2000)

Jika di sisi lain Anda tidak ingin `updated_at kolom` Anda dapat menggunakan sebagai berikut:

 Pesan:
   actAs:
     Timestampable:
       dibuat:
         Nama: created_at
         Jenis: timestamp
         Format: Ymd H: i: s
       diperbarui:
         dinonaktifkan: true
   kolom:
     id:
       Jenis: integer
       utama: true
       autoincrement: true
     nama: string (255)
     email: string (300)
     pesan: string (2000)

Zend Framework: Fundamental - Review

Dengan , Sabtu 28 November 2009 10:42

Majikan saya baru-baru dibayar untuk kelompok kami pengembang untuk mengambil Zend Framework: Fundamentals saja, di sini saya akan meringkas pikiran dan pendapat tentang kursus untuk orang lain. Bagi mereka yang ingin menghemat waktu, inilah ringkasan saya:

Untuk pengembang yang tidak memiliki waktu untuk melihat Zend Framework ini saja (Zend Framework: Fundamental) menawarkan gambar secara keseluruhan baik dari kerangka memperkenalkan Anda ke bidang-bidang kunci dan memberikan informasi yang cukup untuk melanjutkan. Bagi mereka yang telah menghabiskan waktu melihat kerangka dan telah mengikuti satu atau dua tutorial kursus ini tidak menawarkan lebih jauh.

Latar belakang

Aku sudah menjadi PHP pengembang untuk sekitar 5-6 tahun, dan telah mulai bekerja dengan Zend Framework berdasarkan komponen selama 6 bulan terakhir. Saya telah mengembangkan dan / atau menjadi pengembang pada beberapa kecil Zend Framework MVC sites. Saya akan jujur, saya tidak memiliki sejumlah besar paparan framework lain dari sudut pandang pengkodean tetapi menghabiskan beberapa jam meneliti situs proyek dan mengevaluasi them. Kerangka dan masyarakat sekitar Zend Framework itu cukup menarik dan tampaknya ada kemungkinan besar di mana mereka pergi.

Tentang Kursus

Program ini disampaikan lebih dari 9 jam dua sesi WebEx (dengan istirahat 10 menit di tengah). Waktu yang dihabiskan akan melalui serangkaian slide yang disediakan oleh Zend dengan diskusi setiap saat. Anda dapat menggunakan mikrofon untuk berbicara dengan instruktur, tapi sejujurnya saya tidak melihat ada yang menggunakan sesuatu yang lebih dari jendela obrolan. Selain sebuah VMWare mesin Ubuntu disediakan yang memiliki contoh kode dan proyek mendirikan sebuah versi percobaan dari Zend Studio. Pembicaraan Pemimpin tentu saja untuk peserta baik melalui solusi VoIP yang terintegrasi, atau Anda dapat memanggil dalam menggunakan salah satu dari dial di seluruh dunia dalam jumlah banyak.

Selama kursus materi terdiri dari gambaran singkat dari Framework dan pola MVC sebelum menuju ke contoh aplikasi buku tamu. Diskusi menunjukkan bootstrap, Zend_Application, Db Tabel, akses database, Formulir, Penyaringan, ACL, Validasi, dll, dll Pada dasarnya mencakup semua topik yang Anda akan membutuhkan untuk mendapatkan situs dasar sampai semua waktu menjalankan memberikan Anda alat untuk pergi dan mendapatkan lebih maju dalam kerangka kerja (meskipun hal ini jumlah yang 'Lihat situs' banyak waktu).

Waktu yang diberikan untuk kode beberapa contoh, dan untuk mengembangkan 'buku tamu' dan aplikasi sederhana 'wiki'. Secara pribadi saya merasa bahwa menyediakan kode atau aplikasi masing-masing dan kemudian meminta kami untuk mengembangkan apa yang pada dasarnya salinan bersama tidak benar-benar memberikan pengalaman belajar yang baik. Saya lebih suka untuk mengembangkan aplikasi serupa, tapi tidak identik. untuk contoh aplikasi dengan manfaat dari memiliki panduan untuk merujuk ke. Atau membangun aplikasi dari awal dengan demonstran akan dari mungkin menimbulkan pertanyaan lebih lanjut tentang mengapa dan bagaimana, sehingga memberikan pemahaman yang lebih baik dari kerangka, setelah semua yang Anda dapat mencari spesifik setelah kursus.

Kuliah terakhir terdiri dari bekerja pada aplikasi wiki dengan bantuan / bimbingan dari instruktur. Setelah umpan balik saja diambil, itu ditekankan beberapa kali melalui kursus yang memakan umpan balik Zend sangat serius, pada kenyataannya ternyata versi kami tentu saja masih baru. Beberapa pengembang lain dalam perusahaan akan mengambil kursus segera sehingga akan menarik untuk melihat apakah ini telah terjadi.

Gaya tentu saja informal, diperbolehkan untuk umpan balik dan kolaborasi antara peserta dan instruktur. Pemimpin tentu saja ramah, didekati (alamat email yang bersama untuk pertanyaan), dan sementara presentasi dari slide agak gemetar tampak sepenuhnya kompeten dalam rangka. Dia jelas-jelas seseorang yang digunakan pada kerangka kerja secara teratur daripada orang yang diajarkan untuk mengajar kursus, saya menyukai pengalaman 'dunia nyata' dalam hal ini.

Merasa keseluruhan

Dalam beberapa hal saya menemukan kursus buang-buang waktu, orang lain itu sangat berguna. Mudah-mudahan saya akan mendapatkan alasan saya dengan jelas, dan mungkin menyediakan beberapa makanan untuk pikiran atau umpan balik yang berguna (saya tahu ini tidak mungkin!).

Bagi saya sendiri tentu saja ini ditujukan pada tingkat terlalu rendah. Setelah melewati panduan quickstart, membaca Rob Allen Zend Framework in Action, dan bekerja dengan kerangka sedikit saya tidak benar-benar mendapatkan sesuatu yang terlalu banyak. Saya akan dari menyukai saja untuk mengambil dari akhir quickstart dan mengembangkan keterampilan tambahan.

Yang mengatakan, judul saja tidak jelas menyatakan "Zend Framework: Fundamental" dan dalam aspek bahwa program studi mencapai apa set keluar untuk melakukan. Anggota lain dari tim pembangunan yang tidak menghabiskan waktu melihat ke dalam kerangka kerja selesai setiap sesi dengan antusias dan mengajukan pertanyaan yang benar-benar bagus untuk melihat.

Semua itu tidak hilang, itu baik untuk menghabiskan waktu mengkonfirmasikan rincian dasar kerangka dan mengajukan beberapa pertanyaan di daerah di mana saya tidak 100%. Itu juga waktu itu saya harus duduk setiap hari dan berpikir tentang coding menggunakan kerangka dan proyek-proyek masa depan, sesuatu yang saya tidak akan dari mampu untuk melakukan sebaliknya (bisa Anda bayangkan perusahaan Anda setuju dengan:?)). Last but not least Anda juga mendapatkan sertifikat yang bagus dari Zend untuk mengatakan bahwa Anda menghadiri kursus (meskipun melalui email).

Zend Framework Sertifikasi

Ini adalah satu pertanyaan yang terus berdatangan ke pikiran selama kursus, apakah itu mempersiapkan saya untuk sertifikasi? , Cepat mudah adalah Tidak gemilang. Instruktur tentu saja cukup jelas pada dengan saran tambahan bahwa untuk sertifikasi Anda benar-benar harus menggunakan kerangka kerja pada hari ke hari dan merasa sangat nyaman dan percaya diri dalam penggunaannya dan metodologi.

Ringkasan

Mengingat semua yang saya tulis di atas, saya akan meringkas semuanya dalam dua poin-poin mudah:

  • Baru untuk Zend Framework: Kursus ini tidak persis apa yang Anda harapkan, memberikan Anda sebuah pengenalan yang bagus untuk kerangka dan landasan yang baik pada dasar-dasar dari mana Anda dapat membangun. Kursus ini tampaknya membangkitkan minat dan antusiasme untuk kerangka antara pengembang.
  • Menggunakan Zend Framework: Sementara itu bagus untuk menopang beberapa dasar-dasar yang sangat saya rasakan waktu, tenaga, dan dana untuk mengambil kursus bisa dari lebih baik dihabiskan di tempat lain. Ini akan bagus untuk see Zend menciptakan program tingkat baru yang lebih tinggi untuk mengambil pengembang untuk tingkat berikutnya -. Setidaknya dengan standar sertifikasi dan melampaui Untuk itu saya akan mendaftar segera.

Login ke DB menggunakan Zend Framework

Dengan , Selasa 14 April 2009 09:06

Saya sudah berhasil mendapatkan sebuah situs dan berjalan dengan Zend Framework , semuanya baik untuk Firebug penebangan / FirePHP sehingga langkah berikutnya adalah untuk login ke DB. Saya juga ingin untuk login beberapa informasi tambahan menggunakan kerangka seperti agen pengguna, tanggal dan waktu, mendapatkan dan pasca variabel. Jadi untuk memperpanjang manual sedikit di sini yang saya lakukan:

// Set up logging to DB
$db = Zend_Registry ::get('dbAdapters');
$db = $db['general'];

$ ColumnMapping = array ('prioritas' => 'prioritas',
'Pesan' => 'pesan',
'Datetime' => 'timestamp',
'User_agent' => 'user_agent',
'Get_vars' => 'get_vars',
'Post_vars' => 'post_vars',
'Situs' => 'situs'
);

$ WriterDb = baru Zend_Log_Writer_Db ($ db, 'error_logging', $ columnMapping);
$ Logger = new Zend_Log ($ writerDb);

$ Logger-> setEventItem ('datetime', date ('Ymd H: i: s'));
$ Logger-> setEventItem ('user_agent', $ _SERVER ['HTTP_USER_AGENT']);
$ Logger-> setEventItem ('get_vars', print_r ($ _GET, true));
$ Logger-> setEventItem ('post_vars', print_r ($ _POST, true));
$ Logger-> setEventItem ('situs', SITUS);

$ Logger-> info ('pesan Informational');

Mana kunci array dalam $ columnMapping adalah nama kolom saya. 'Prioritas' dan 'pesan' dipahami oleh Zend_Log_Writers tetapi bidang tambahan yang ditambahkan untuk memberikan saya beberapa informasi tambahan.

Jelas ini mengasumsikan bahwa Anda memiliki penebangan bekerja menggunakan salah satu dari penulis lain pertama:)













Panorama Didukung oleh Themocracy

7 pengunjung online sekarang
6 tamu, 1 bot, 0 anggota
Max pengunjung hari ini: 16 jam 02:02 am UTC
Bulan ini: 16 di 2011/1/9 02:02 UTC
Tahun ini: 130 pada 28-03-2011 10:40 UTC
Semua waktu: 130 pada 28-03-2011 10:40 UTC