Tarikh tahun Julat drupal hosting

Dicatat oleh arlinsandbulte pada 30 Mac, 2012 at 13:46

Saya tahu ini akan menjadi topik kontroversi. Oleh itu, saya akan menuju pertempuran dan memulakan perbincangan diri saya segera.
Karens mencadangkan mengguna pakai format ISO yang kerana hanya format yang disokong untuk versi masa depan modul Tarikh (7.x-3.x contrib teras 8.x!). Saya 100% memihak kepada cadangan ini.

Ia memudahkan sokongan pembangunan keserasian pelbagai platform. Daripada banyak piawaian format tarikh (unix tanda waktu, datetime, dan lain-lain), ia menyediakan fleksibiliti yang paling sebagai sebahagian daripada tarikh masa boleh ditinggalkan untuk mengawal butiran yang kekaburan.
fungsi tarikh baru PHP ini membuat kerja dengan tarikh mana-mana format yang lebih mudah berbanding sebelum ini. Jadi, saya tidak fikir format timestamp unix tradisional memegang 'kemudahan penggunaan' kelebihan seperti ia pernah lakukan.
Walau bagaimanapun, kita juga perlu mengakui kelemahan batasan cadangan ini (memakai topi peguam bela syaitan saya):

Tarikh tahun drupal pelbagai banyak hosting masa untuk itu, banyak
  1. ISO format tarikh yang asal tidak disokong oleh semua pangkalan data (seperti MySQL). Jadi, kami merancang untuk menyimpan nilai tarikh ISO sebagai rentetan varchar dalam pangkalan data. Tarikh pertanyaan boleh dibuat dengan menggunakan pertanyaan subrentetan untuk mencari tarikh tertentu (contohnya, semua tarikh dengan tahun 2012). Berfungsi, saya tidak fikir thre apa-apa masalah dengan itu. Ia perlu dibuat untuk melaksanakan rancangan itu, manakala sokongan hanya kira-kira apa-apa jenis pangkalan data dengan minimum atau tiada pangkalan data hacks tertentu atau kerja-arounds. Tetapi, bagaimana dengan prestasi? Berapa banyak hit prestasi ada melaksanakan pertanyaan subrentetan terhadap pangkalan data nilai tarikh asli 'sebenar'?
  2. Drupal teras (<=7.x) uses the unix timestamp format to store date & time information, most notably, for content created/updated dates. Going along with the current trend of making all content parts fields (body, terms, even titles), it might be desirable to make the created or updated date a real 'date field' too. What are the implications of this? Would all Drupal dates (like node created/updated dates) be converted to the ISO format? Or would we keep 2 different date types mixed into core?

Ini adalah sebelum masa saya, tetapi saya fikir versi awal Tarikh sebenarnya disimpan setiap bahagian tarikh (tahun, bulan, hari, jam, minit, saat) dalam ruangan pangkalan data yang berasingan. strategi yang membolehkan format simpanan integer.
Tetapi saya sangat ragu-ragu strategi yang berbaloi. Dan, melainkan jika dibuktikan sebaliknya, saya akan TIDAK menyokongnya.
/ Me (-) undi saya post :-) sendiri

Saya benar-benar hilang hujah teknikal jelas di sini.

ISO Tarikh format sintaks, seperti yang dicadangkan di sini, terutamanya akal demi untuk memaparkan dan menyampaikan maklumat kini merentasi pihak selain bebas (cth antara backend (PHP) dan frontend (JavaScript)).

Ia tidak benar-benar sesuai sebagai sintaks dan / atau jenis data untuk menyimpan dan pertanyaan data tarikh, kerana sintaks adalah terlalu fleksibel (dan dengan itu tidak benar-benar jenis data, selain daripada "teks").

  1. Apakah perbezaan sebenar antara Tarikh / datetime dan format Tarikh ISO?

selain daripada "T"? en.wikipedia.org/wiki/Iso_date_format menerangkan banyak lagi pembatas dalam sintaks ISO, tetapi saya agak ragu-ragu bahawa kita akan membenarkan mana-mana penggunaan mereka - demi untuk dapat memperoleh data dengan cara yang boleh diramal / konsisten?

Tarikh tahun drupal pelbagai hosting format mudah daripada

Cth jika kita akan membenarkan tarikh minggu alternatif sintaks (2012-W13-5) atau tarikh ordinal sintaks untuk muncul dalam kalendar / tarikh / sintaks masa, rekod tidak boleh ditapis oleh tarikh lagi, kerana anda perlu melakukan pengiraan tarikh maju untuk menyamakan data pertama.

(Begitu juga dengan meninggalkan komponen lebih butiran tarikh / masa, kerana mana-mana penapis berdasarkan tali-/ menyusun operasi akan gagal pada komponen hilang.)

  • Subrentetan operasi pada lajur dalam jadual memegang berjuta-juta rekod (contoh) akan menjadi teruk perlahan.

    Iaitu, kerana enjin pangkalan data tidak boleh menggunakan mana-mana indeks atau fungsi asli untuk mengoptimumkan pertanyaan. Bermakna kesan prestasi saat (tidak milisaat) untuk pertanyaan pangkalan data tunggal seluruh set data yang besar.

  • Berdasarkan perkara di atas, saya tidak cukup mendapatkan apa yang salah dengan DATETIME asli atau jenis data setara enjin pangkalan data?

    Standard SQL mentakrifkan ISO 8601 sebagai format lalai, yang cukup banyak yang sama.

    (Ya, SQLite hanya menyokong rentetan teks, tetapi SQLite tidak menyokong pelbagai jenis data sama ada cara, jadi kemungkinan yang sangat terhad pada enjin yang anyway.)

    A Jenis data yang betul membolehkan penapisan asli dan menyusun nilai-nilai, yang boleh diindeks. Pengendalian dalam pertanyaan SQL semudah berurusan dengan cap waktu UNIX.

    Individu (lebih terperinci) komponen tarikh tidak boleh ditinggalkan, tetapi demi penyimpanan data ringkas dan betul, sifat-sifat seperti "Allday" dan yang sama perlu berasingan disimpan bendera setiap tarikh sama ada cara (dan penggunaan-kes penambahan tertentu seperti yang mereka tidak terpakai bagi semua tarikh di tempat pertama; seperti gagal untuk kandungan yang dicipta tarikh diubahsuai).

    Saya tidak keberatan menggunakan medan datetime berasal jika kita boleh mendapatkan semula ke dalam teras. Tetapi saya sudah cuba berjuang perjuangan itu dan hilang. Dan saya tidak akan membuat penyelesaian yang menggunakan bidang datetime yang asli apabila ia telah dibuat jelas bahawa yang committers teras tidak akan membenarkan bidang datetime dalam teras.

    Dicatat oleh arlinsandbulte pada 10 April, 2012 pada 04:41

    Saya mengesyaki kita akan perlu untuk menghadkan format ISO yang disimpan kepada YYYY-MM-yyyyThh: Borang SS untuk mengekalkan konsisten dan mudah carian dan jenis: MM.
    Mungkin juga menggunakan ± Y YYYY-MM-yyyyThh: MM: SS format untuk membolehkan pelbagai rangkaian sejarah masa hadapan, yang telah menjadi permintaan biasa di date.module. Tetapi, pengendalian tarikh PHP ini mungkin ada had pula.

    Juga, walaupun standard ISO ini membolehkan menjatuhkan bahagian kurang penting untuk mengurangkan ketepatan, ini mungkin membuat pelbagai dan carian lebih sukar. oleh kerana itu, kita mungkin masih diperlukan untuk menyimpan 'sesuatu' untuk setiap bahagian. (Sila betulkan saya jika saya salah. Saya bukan pakar pangkalan data).
    -idea liar: Kita boleh menyimpan '99' dalam mana-mana un diperlukan Tarikh bahagian. Yang bekerja untuk semua bahagian kecuali tahun, tetapi juga membuat tarikh rentetan disimpan bukan ISO Syariah.

    Dicatat oleh David Strauss pada April 9, 2012 at 07:57

    Cara ISO 8601 mengendalikan zon masa adalah cukup otak-mati. Zon masa adalah pengguna / kandungan item penyetempatan kebimbangan, bukan sesuatu yang harus pra-diselaraskan tarikh yang disimpan dengan penjelasan tentang bagaimana tarikh berbeza daripada UTC. Ia menjadikan data sukar untuk membaca dan memecah rentetan menyusun (yang selainnya yang kukuh dengan tarikh ISO).

    Saya hanya boleh menyokong cadangan ini jika kita berpegang kepada menggunakan masa UTC / Zulu di dalam pangkalan data. Perkara utama yang saya suka tentang sejarah kita menggunakan cap waktu zaman Unix adalah mengetahui mereka sentiasa dalam UTC.

    Dicatat oleh Karens pada 11 April, 2012 pada 11:19

    Ya, soalan mengenai bila / sama ada untuk menukar kali untuk UTC untuk penyimpanan adalah soalan yang berasingan dan kita perlu perbincangan yang berasingan tentang itu. Walaupun ISO mempunyai pilihan untuk menambah maklumat zon waktu untuk tali, saya sebenarnya tidak mencadangkan bahawa kita berbuat demikian, saya hanya menunjukkan bahawa ia adalah mungkin. Saya merancang untuk membuka satu isu yang berasingan mengenai topik itu (atau sesiapa sahaja boleh).

    Standard ISO mempunyai banyak masa untuk itu, banyak orang telah berfikir melalui perkara-perkara yang perlu diwakili dalam tarikh dan mencipta format universal difahami untuk itu. Bidang pangkalan data datetime speakers sebenarnya menggunakannya juga.

    Saya mahu menambah + - awalan ia jadi kami boleh menyokong tarikh BC, dan yang akan memberi kita hampir semua yang telah diminta selama ini. Penukaran dari / ke format ini dari format lain boleh dikendalikan dengan PHP. Dan penukaran zon waktu boleh dikendalikan dengan PHP.

    Isu baki yang mungkin menjadi perhatian ialah prestasi tali vs int (timestamp) dan bidang-bidang datetime native speakers, jadi saya mula perbincangan yang berasingan tentang itu untuk memikirkan apa kos sebenar dan apa yang boleh kita lakukan untuk membuat prestasi yang baik yang mungkin. Tetapi apabila mempertimbangkan mudah alih pangkalan data, ISO dalam bidang varchar adalah pemenang besar.

    Dicatat oleh arlinsandbulte pada 11 April, 2012 pada 13:52

    Akan menambah + - menimbulkan masalah untuk menyusun?
    Tanpa + -, menyusun rentetan menaik YYYY-MM-DD secara semula jadi menyebabkan perintah yang betul (tarikh terawal pertama tarikh terkini lepas).
    TETAPI, sambil menambah + itu - perubahan itu. A mudah keputusan rentetan menaik semacam dalam semua tarikh + pertama, disusun dengan tarikh terawal untuk tarikh terkini, diikuti oleh semua - tarikh, disusun dengan tarikh-tarikh terkini untuk tarikh terawal.

    Sebagai contoh, di sini adalah senarai yang disusun rentetan tahun sahaja:
    "0000"
    "1800"
    "1900"
    "1977"
    "2000"
    "2012"
    "-0100"
    "-0500"
    "-1000"
    "-5000"

    Dicatat oleh Alan D. on September 27, 2012 at 01:50

    Ia seolah-olah gila untuk mundur dan tidak menyokong bidang-bidang DB. Tidak termasuk semua barangan add-on dalam Tarikh, ia adalah satu modul besar-besaran dan pada semua sistem lain yang saya telah bekerja pada, kelas Tarikh sokongan ialah kelas remeh 1000 atau lebih baris kod.

    Jadi ini adalah benar-benar satu soalan yang tajam ditujukan kepada DB pemandu coders, boleh medan DateTime hendak ditukar secara dalaman untuk menyokong bidang pseudo-DateTime?

    Membelah keluar lajur ke dalam komponen individu berfungsi, tetapi adalah sangat tidak kemas (seperti yang saya telah lakukan pada Tarikh Separa), dan benar-benar tidak akan mengesyorkan pergi ke jalan ini. Saya rasa seperti saya ditembak diri saya di kaki melakukan ini dan akan melihat mengembalikan ini dalam keluaran akan datang.

    Tanpa membaca semula ciri-ciri komputer iso lagi (atau menjalankan ujian), tanda positif adalah pilihan jika saya ingat betul, jadi tanda tolak diperlukan yang menafikan isu menyusun jika saya membaca jadual ASCII betul. (- adalah 45, dan 0-9 julat dari 48 ke 57). Menggunakan + (ASCII 43) membahagikan jenis di sini.

    sokongan zon waktu (atau kurang)

    Saya bersetuju bahawa hanya menggunakan zon waktu tunggal di dalam pangkalan data adalah lebih baik (UTC) kerana ia menafikan sebahagian daripada negatif dalam pesanan dan mencari data apabila tidak menyokong bidang tarikh db asli.

    One Two cincin untuk memerintah mereka semua?

    Saya bersetuju dengan Sun, kita harus menghadkan ini kepada sub-set sangat mudah daripada format lanjutan disokong. Mungkin sahaja

    Walaupun tidak disokong pada masa ini dengan modul Tarikh, maklumat zon waktu tidak mempunyai makna pada tarikh, 2012-01-01 di Amerika adalah hampir satu hari seluruh belakang 2012-01-01 di Australia. Jadi mungkin sokongan bidang boleh dikurangkan nilainya kepada bidang ISO-suka dan medan ISO seperti dengan sokongan zon waktu? Ini jatuh sokongan masa, tetapi saya tidak fikir bahawa teras harus menyokong bidang Time.

    Akhir sekali, Drupal 8 ciri pembekuan: 1 DISEMBER 2012

  • Menonton video ini!

    Artikel berkaitan

    Buat bidang tarikh drupal hostingPakej ini mengandungi kedua-dua tarikh / masa jenis medan Tarikh bidang fleksibel dan API Tarikh yang modul lain boleh digunakan. D5 dan D6 versi medan Tarikh menghendaki Kit Pembinaan Kandungan ...
    Pertukaran tarikh diterbitkan hosting wordpressPenerangan Memaparkan atau pulangan tarikh siaran, atau satu set jawatan jika diterbitkan pada hari yang sama. NOTA PENTING: Apabila terdapat beberapa jawatan pada halaman yang disiarkan di bawah hari yang sama, ...
    Pertanyaan meninggalkan menyertai hosting drupalDicatat oleh thermalmusic pada 14 Mac, 2012 at 02:26 Saya cuba untuk menulis pertanyaan SQL pada pangkalan data D6 untuk kembali pengguna dan nilai profil mereka. masalah saya semakin nilai profil untuk kembali sebagai ...
    Caching mekanisme drupal hostingDicatat oleh joshk pada 21 Februari, 2009 at 22:05 Dalam usaha saya yang tidak berkesudahan untuk lebih Drupal Glory, saya telah menghabiskan tahun yang lalu boning sehingga mengenai pelbagai cara untuk meningkatkan prestasi laman web dan ...
    Piwik laman id drupal hostingJadual kandungan Halaman ini menerangkan bagaimana untuk memasang Piwik pada pelayan web anda dan mula menjejaki anda analisis laman web. Jika anda lebih suka untuk menonton tutorial video, klik di sini: Cara Setup Piwik ...