Tarayıcı / sunucu üzerinde aynı kod

6 Cevap php

Ben PHP kullanarak bir web uygulaması yazıyorum ve ben sunucu ve tarayıcı benzer bir kod gereken çeşitli durumların içine çalıştırıyorum. Örneğin:

  • Ben kullanıcı girişi doğrulamak, ve her iki tarafta aynı hata iletileri oluşturmak istiyorum.
  • Ben (belirli bir alan az 1 ise, örneğin iki ondalık basamaklı göstermek, aksi takdirde yok) belirli kuralları kullanarak verileri biçimlendirmek, ve ne olursa olsun bu işler hangi tarafının aynı görünmesini istiyorsunuz.

Insanlar tarayıcı sunucudan daha fazla mantık hareket ediyor gibi bu, ortak bir sorun olması gerektiği gibi görünüyor. Ama (özellikle PHP için) onunla başa çıkmak için herhangi bir ortak desen ya da kütüphaneler var mı?

6 Cevap

Bir çözüm kullanmak olacaktır server-side JavaScript. Daha sonra kod büyük topakları paylaşmak mümkün olurdu.

Interesting question! As far as I know there are 2 options for PHP:

  • Form doğrulama yapmak için Ajax kullanın, böylece her şeyi sunucuda olur.
  • En azından liman haline kolaylığı hangi, JS PHP fonksiyonları getirmek için bu çaba var: http://phpjs.org/

Java'da ancak, Rhino ile Javascript çalıştırabilirsiniz.

Aklıma başka şeyler Flaş veya Java uygulamaları ile çirkin kesmek, ya Pijamalı gibi bir çerçeve içerir.

Sen haxe dilini kullanmayı deneyebilirsiniz. Bu js / php ve hatta actionscript (flaş) tercüme edilebilir.

Kısmi bir çözüm AJAX. Örneğin, sunucu üzerinde bir kez doğrulama kodunu yazmak ve formları bir giriş geçerli olup olmadığını görmek ve değilse görüntülemek için bir hata iletisi için sormak için sunucuya konuşalım.

json_encode ve json_decode büyük bir başlangıçtır - Gerektiği gibi php diziler ve json nesneleri mevcut verilerin aynı kaynak.

Uygun gördüğünüz gibi json_encoded veri <script> etiketleri veya ajax ile servis edilebilir.

Sen http://phpjs.org/ Sana istemci tarafında php kod çalıştırmak için kullanabilirsiniz. Bu php çoğu işlev için çalışıyor.