सरणियों के लिए आशुलिपि: क्या {} या [] जैसा शाब्दिक वाक्यविन्यास है?


84

PHP में सरणी संकेतन के लिए आशुलिपि क्या है?

मैंने उपयोग करने की कोशिश की (काम नहीं करता है):

$list = {};

यह सही होगा, यदि आप PHP के लिए अन्य शॉर्टहैंड के बारे में कुछ जानकारी पर लिंक देते हैं।


ऐसे कई कार्य हैं जिनका उपयोग विशेष मामलों (जैसे, str_split) में सरणियाँ बनाने के लिए किया जा सकता है, लेकिन मुझे लगता है कि आप जिस बारे में बात कर रहे हैं वह नहीं है।
मैथ्यू

PHP नहीं है। लेकिन phpreboot और pihipi प्रयोगात्मक नए वाक्यविन्यास प्रदान करते हैं।
मारियो

जवाबों:


135

अद्यतन:
PHP 5.4.0 के रूप में सरणियों की घोषणा के लिए एक छोटा वाक्यविन्यास प्रस्तुत किया गया है:

$list = [];

पिछला उत्तर:

वहाँ नहीं है केवल $list = array();लेकिन आप केवल तत्वों को जोड़ना शुरू कर सकते हैं।

<?php
$list[] = 1;
$list['myKey'] = 2;
$list[42] = 3;

यह पूरी तरह से ठीक है जहाँ तक PHP का संबंध है। आपको अपरिभाषित चर के लिए E_NOTICE भी नहीं मिलेगी

E_NOTICE स्तर की त्रुटि, असिंचित चर के साथ काम करने के मामले में जारी की जाती है, हालांकि असिंचित सरणी में तत्वों को जोड़ने के मामले में नहीं।

आशुलिपि तरीकों के लिए, वहाँ बहुत सारे बिखरे हुए हैं। यदि आप उन्हें खोजने के लिए सिर्फ मैनुअल पढ़ना चाहते हैं ।

कुछ उदाहरण, सिर्फ आपके मनोरंजन के लिए:

  1. $arr[]के लिए आशुलिपि array_push
  2. foreachनिर्माण
  3. echo $string1, $string2, $string3;
  4. संग का संग करें +
  5. का अस्तित्व elseif
  6. तार में परिवर्तनीय एम्बेडिंग, $name = 'Jack'; echo "Hello $name";

6
PHP की तरह डरपोक है।
21W में GWW

1
मैंने वर्षों से PHP का पेशेवर उपयोग किया है, मुझे एक सहकर्मी से पूछना था कि $results[] = $row;इसका क्या मतलब है।
जोस अलेक्जेंडर इबर्रा

4
$ परिणाम [] = $ पंक्ति; वास्तव में array_push ($ परिणाम, $ पंक्ति) की तुलना में बहुत तेज़ है
Daniklad

इस सब के बाद, मैंने सोचा कि $var = [];PHP7 के साथ पेश किया गया था। नहीं पता था कि यह 5.4 के रूप में वापस आ गया था!
इनक्रेडिबल

46

हाँ, यह मौजूद है !!

एक और ढेर अतिप्रवाह प्रश्न से निकाला गया:

सरणियों के लिए छोटा सिंटैक्स को फिर से तैयार किया गया है, स्वीकार किया गया है, और अब PHP 5.4 के साथ जारी होने के रास्ते पर है

उपयोग:

$list = [];

संदर्भ: Arrays के लिए PHP 5.4 लघु हाथ


किसी के लिए भी जिसने यह गलती की है, कुंजियों और मूल्यों =>के :बीच का उपयोग करें !
clabe45

30

अंदर सामग्री को परिभाषित करना भी संभव है [जैसे]

  $array = ['vaue1', 'value2', 'key3'=>['value3', 'value4']];

यह केवल php5.4 और इसके बाद के संस्करण में काम करेगा।


1
मुझे लगता है कि 5.4 और उससे अधिक (5.6 में यह काम करता है) लिखना बेहतर है। एक नोट के रूप में एक सरणी को वर्ग स्थिर (उदाहरण के लिए x = ["a", "b"];) के रूप में एक सरणी घोषित करने का एकमात्र तरीका है, क्योंकि const x = array (....) काम नहीं करता है
पियरपोलो सीरा


4

नहींं, यह प्रस्तावित किया गया था और समुदाय द्वारा अस्वीकार कर दिया गया था, इसलिए अब केवल सरणियों के लिए वाक्यविन्यास सरणी () है


3

Php में एक सरणी को परिभाषित करने का एकमात्र तरीका array()भाषा निर्माण है। PHP में कुछ अन्य भाषाओं की तरह सरणी शाब्दिकों के लिए शॉर्टहैंड नहीं है।


3

आप अपनी सारणी इस प्रकार घोषित कर सकते हैं:

$myArray1 = array(num1, num2, num3);
$myArray2 = array('string1', 'string2', 'string3');
$myArray3 = array( 'stringkey1'=>'stringvalue1', 'stringkey2'=>'stringvalue2');
$myArray4 = array( 'stringkey1'=>numValue1, 'stringkey2'=>numValue2);
$myArray5 = array( numkey1=>'stringvalue1', numkey2=>'stringvalue2');
$myArray6 = array( numkey1=>numValue1, numkey2=>numValue2);

आपके पास जितनी जरूरत हो उतने एम्बेडेड सरणियां हो सकती हैं।


यह अपरिभाषित स्थिरांक के बारे में नोटिस का उत्पादन करेगा।
पोन्नूडल्स 15

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.