Her zaman daha phpish $this->_request->getPost('this')
ve $this->_request->getQuery('that')
(bu getGet en GetQuery insteado ile çok mantıklı değildir olmak üzere) kullandık.
Ne bu iki en iyi? (Veya eğer gidecekseniz başka daha iyi bir yol)
Seçimine sadece hızlı bir açıklama getQuery()
. Ifadeler seçim o oraya nasıl, değil ne tür verilerin geliyor. GET ve POST POST isteği, "post veri" olarak bilinen bölümünde durumunda, dahil olmak üzere, her türlü bilgi taşıyan, sadece istek yöntemleri vardır. GET isteği böyle bir blok var, onu taşıyan herhangi bir değişken veri (sonra? Parçası) url sorgu dizesi bir parçasıdır.
getPost()
, bir POST isteği sonrası veri bölümünden veri alırken Yani, getQuery()
, bir GET veya POST isteği (yanı sıra diğer HTTP isteği ya sorgu dizesi verileri alır yöntemleri).
(İstekler DB satır değiştiren gibi bir yan etkisi üretebilir şey, için kullanılmamalıdır GET Not)
Yani, ilk soruya cevap olarak, getPost()
kullanın ve getQuery()
yöntemleri, bu yol, nereye veri kaynağı (eğer umurumda değil, {[emin olabilirsiniz (2)]} de) çalışır, ancak ek veri içerebilir.
Bu yöntemler ile php girişi doğrulamak için en iyi yöntem nedir?
Eğer first kullanmak nerede girişi doğrulamak için en iyi yerdir. Yani getParams()
onu çekin, getPost()
, demek ki, ya getQuery()
. Bu şekilde, veri nereye ihtiyaç için her zaman doğru olduğunu ve onu geçmek, size güvenli olduğunu biliyorum. Sadece güvenli olması için, başka Denetleyicisi (veya Controller Eylem) onu geçmek eğer, muhtemelen yine orada kontrol etmelisiniz, unutmayın. Bunu nasıl uygulamanıza bağlıdır, ama yine de kontrol edilmesi gerekir.