Tek bir tuşa ve değerine sahip bir nesnem var. Ama ona erişimin anahtarını bilmiyorum. Nesneyi numaralandırmadan anahtarı almanın en etkili yolu nedir?PHP: nesneden tek bir anahtar al
cevap
sadece hiç erişim değeri, anahtarı gerekmez (aslında özellik adı) isterseniz: Eğer gerçekten özellik adı istiyorsanız
$value = current((array)$object);
, şunu deneyin:
$key = key((array)$object);
Nesneler bir dizi var ve nesnelerin her biri bir özelliği var ve özellikleri isimleri bilmiyorum. 'Foreach' döngüsünü kullanarak dizi boyunca yineliyorum ve her nesne için anahtarın yanı sıra değer istiyorum. Bu çözümü buldum, ancak verimsiz değil, çünkü $ nesnesini her seferinde bir diziye çeviriyorsunuz? (Üzgünüm, eğer çok basitse, ama ben bir yeniyim. Bir cevabı takdir edeceğim, çünkü bunu kullanmak akıllıca olup olmadığından emin değilim). – Solace
$array = array("foo" => "bar");
$keys = array_keys($array);
echo $keys[0];
// Output: foo
bakınız: Böyle bir diziye nesneyi yayınlayabileceğim http://php.net/manual/en/function.array-keys.php
Bu gerçekten bir nesne için çalışıyor? 'stdClass :: __ set_state (dizi ( 'tag1' => 1, )) – Pablo
@Michael: Hatam, anahtarı bir diziden almaya çalıştığınızı varsaydım. Bu durumda, nesneyi büyük olasılıkla bir diziye çevirmek isteyeceksiniz. @ Thomasrutter'ın örneğine bakın: http://stackoverflow.com/questions/3411495/php-get-a-single-key-from-object/3411520#3411520 – gpmcadam
İlk başta "anahtar" kelimesinin kullanılmasıyla yanıltılmıştım , bir dizi terimdir ... – deceze
:
$myarray = (array)$myobject;
Ve sonra, sadece tek bir değere sahip bir dizi için, bu anahtarı getir gerektiğini bu değer için.
$value = key($myarray);
İsterseniz bunları bir satırda yapabilirsiniz. Elbette, nesneyi numaralandırarak da yapabilirsiniz, sorunuzda bahsettiğiniz gibi.
sonra, anahtarın yerine değeri almak için:$value = current($myarray);
- 1. JavaScript: Bir nesneden anahtar isimleri aldınız mı?
- 2. Belirtilen anahtar dışındaki tüm öğeleri nesneden çıkarın.
- 3. Anahtar deyiminde durumların listesini al
- 4. Create Stream <T> tek bir nesneden
- 5. Django- Yabancı Anahtar Model Al
- 6. php dosyasını tek tek yükleme?
- 7. PHP-CPP'de bir php :: Value sınıf adı al
- 8. PHP - Renk giriş değeri al
- 9. ekleme Anahtar Değer PHP
- 10. İki boş anahtar PHP
- 11. LocalStorage'dan tüm verileri al (anahtar adını bilmeden)
- 12. Yabancı anahtar kısıtlaması vermek için tablo al
- 13. Django'da Model Biçimlendirildikten Sonra Birincil Anahtar Al
- 14. Değerleri bir nesneden diğerine kopyalama
- 15. ASP: ListBox Seçilen Öğeleri Al - Tek Liner?
- 16. SalesForce.com: PHP üzerinden özel alanlar al
- 17. Otomatik anahtar: Belirli bir başlığa sahip pencerelerin listesini al
- 18. Struts2 Etiket tek bir fieldError al sadece metin olarak alın
- 19. php dizisini tek bir JSON nesnesine dönüştürün
- 20. Tek bir php dosyasıyla farklı sayfalar oluşturma
- 21. Apache, tek bir PHP sayfasında donuyor
- 22. Anahtar sayısal olduğunda, çok boyutlu diziden tek değer nasıl eklenir?
- 23. PHP - ve/veya anahtar kelimeler
- 24. Anahtar koruma olmadan php array_filter
- 25. python'daki bir nesneden bir işlevi nasıl çağırırsınız?
- 26. PHP foreach döngüsü anahtar değeri
- 27. PHP: Yoldan son dizin adını al
- 28. Web sitesinden içerikler al XMLHttpRequest in PHP
- 29. PHP URL için JS değer al
- 30. Nesneden xml oluştur
Doğru tuşa sahip olduğunuzu nereden biliyorsunuz? – NullUserException
Bir 'array_search' yapmak için mi arıyorsunuz? –
Sadece "jp": 3} 'e dönüştürülmüş tek bir json nesnesine sahibim ve her ikisini de, anahtar adını ve değerini almam gerekiyor. – Pablo