PHP kütüphanesi veya komut satırı?

3 Cevap php

Ben oldukça PHP kütüphaneden daha bir şey yapmak için komut satırını kullanmayı seçtiniz son zamanlarda iki durumların içine çalıştırmak. Örneğin, PHP yapıyor:

`curl http://someplace.com`

bunun yerine:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);

Diğer durum yerine PHP arayüzü, imagemagick komut satırı arabirimini kullanıyor.

Bazı insanlar kütüphaneleri kullanarak daha iyi olduğunu düşünüyorum konuştuk. Bazı daha hızlı olduğunu söylüyorlar, diğer vs, daha güvenli demek

Sizin düşünceniz nedir? İkisinden birini kullanarak faydaları nelerdir?

Ben bir fayda biliyorum, ben sadece bir kod satırı yerine 5 olması.

3 Cevap

Ben her zaman kütüphaneleri kullanmak istiyorum:

  1. Dolayısıyla daha hızlı - (çalıştırdığınız program için bir kez alt kabuk için, ve başka) iki kere ödemek gerek yok

  2. Güvenlik yardımcı komut satırı argümanları, kaçan endişelenmenize gerek yok

Kod satırları sayısı bir endişe ise, bir zamanlar bir işlevi olan 5 satır yazmak ve daha sonra ihtiyacınız olduğunda bu işlevini çağırın.

Uygulamaları çalıştırırken tehlikeli ve neredeyse her zaman pahalı bir işlem hem de. Düzgün, diğer şeyler arasında programa geçmek her parametreyi kaçmak gerekir.

Yeni bir süreç yaratma maliyeti çok varolan birinde basit bir işlevi çağırmadan da üstünde.

Ne yapıyorsun şimdi iyi çalışabilir olsa da, bu kez uygulama eşzamanlı kullanıcılar binlerce vardır olmayacaktır. (Sen değil, bunun için planlama? :))

Bir komut satırı çağrısı kullanarak ve kütüphane kullanma arasındaki kapalı ticaret uygulamanızın hız ve uygulama üzerinde çalıştığı bilgisayarın hızıdır.

Eğer böyle bir komut satırı arama yapmak her zaman, PHP bir süreç (aslında iki, çalıştırmak istediğiniz kabuk ve ardından komut) çatal vardır. Bu ne demektir, bilgisayar başka bir uygulamayı başlatmak için vardır. Bu sistem kaynaklarını çok yiyor pahalı bir şeydir. Eğer (veya başlangıç ​​süreci) bir kez bilgisayarınıza çok fazla program başlatmaya çalışırsanız ne olur düşünün.

Bir kitaplık kullandığınızda, hiçbir işlem çatallı gerekir. PHP kendisi bu diğer uygulamalar yapacağını işi yapıyor.

O dedi, ben PHP kütüphaneleri aracılığıyla bulunmayan satırı uygulamaları komut çağrıları yaparak paçayı üretim web uygulamaları bir çok tanıyorum. Bir uygulamanın düşük trafik parçası, ya da sık sık vurmak almaz bir sayfası ise büyütmek için zamanı geldiğinde, onunla kurtulmak mümkün olabilir, ancak kendinizi acı bir dünya satın alıyoruz.

Dikkate güvenlik de var. Böyle PHP bir komutu çalıştırdığınızda komut dizesini oluşturmak için değişkenler kullanarak eğer, gibi bir şey riski

;rm -rf /

(Rm-rf / tüm dosya sistemi siler) kötü olurdu komuta içine enjekte ediliyor. Evet, bu işlemek için giriş değişkenleri kaçış, ama el kaçış SQL sorguları çalıştı nasıl bir emektar PHP geliştiricisi sorabilirsiniz.

Yani, kısacası, muhtemelen onunla uzak alabilirsiniz, ama bu iyi bir uygulama değil ve s --- fan çarptığında kendinizi gelecekte acı bir yük satın alıyoruz.