PHP sscanf() ਫੰਕਸ਼ਨ

ਉਦਾਹਰਣ

ਪਾਰਸਿੰਗ ਸਟ੍ਰਿੰਗ:

<?php
$str = "age:30 weight:60kg";
sscanf($str,"age:%d weight:%dkg",$age,$weight);
// ਟਾਈਪ ਅਤੇ ਮੁੱਲ ਦਿਖਾਓ
var_dump($age,$weight);
?>

چلاؤنے والا مثال

ਪਰਿਭਾਸ਼ਾ ਅਤੇ ਵਰਤੋਂ

sscanf() ਫੰਕਸ਼ਨ ਸਟ੍ਰਿੰਗ ਤੋਂ ਦਾਖਲ ਹੋਣ ਵਾਲੇ ਇਨਪੁਟ ਨੂੰ ਫਾਰਮੈਟ ਅਨੁਸਾਰ ਪਾਰਸਿੰਗ ਕਰਦਾ ਹੈ। sscanf() ਫੰਕਸ਼ਨ ਫਾਰਮੈਟ ਸਟ੍ਰਿੰਗ ਅਨੁਸਾਰ ਸਟ੍ਰਿੰਗ ਵਿੱਚੋਂ ਵਾਪਸ ਪਾਰਸਿੰਗ ਕਰਦਾ ਹੈ。

ਜੇਕਰ ਇਸ ਫੰਕਸ਼ਨ ਨੂੰ ਦੋ ਪੈਰਾਮੀਟਰ ਦਿੱਤੇ ਗਏ ਹਨ ਤਾਂ, ਅੰਕੜੇ ਇੱਕ ਮੰਡਲ ਵਿੱਚ ਵਾਪਸ ਦਿੱਤੇ ਜਾਣਗੇ। ਨਹੀਂ ਤਾਂ, ਜੇਕਰ ਅਤਿਰਿਕਤ ਪੈਰਾਮੀਟਰ ਦਿੱਤੇ ਗਏ ਹਨ ਤਾਂ, ਵੇਰਵੇ ਇਨ੍ਹਾਂ ਪੈਰਾਮੀਟਰਾਂ ਵਿੱਚ ਸਟੋਰ ਕੀਤੇ ਜਾਣਗੇ। ਜੇਕਰ ਵੈਰੇਬਲਾਂ ਦੀ ਗਿਣਤੀ ਵੱਧ ਤੋਂ ਵੱਧ ਹੈ ਤਾਂ, ਦੋਸ਼ ਹੁੰਦਾ ਹੈ। ਪਰ, ਜੇਕਰ ਵੈਰੇਬਲਾਂ ਦੀ ਗਿਣਤੀ ਘੱਟ ਤੋਂ ਘੱਟ ਹੈ ਤਾਂ, ਅਤਿਰਿਕਤ ਵੈਰੇਬਲਾਂ ਨੂੰ NULL ਦਿੱਤਾ ਜਾਵੇਗਾ。

ਸਬੰਧਤ ਫੰਕਸ਼ਨਾਂ:

  • printf() - ਫਾਰਮੈਟਡ ਸਟ੍ਰਿੰਗ ਨੂੰ ਬਾਹਰ ਲਿਖੋ
  • sprintf() - ਇੱਕ ਫਾਰਮੈਟਡ ਸਟ੍ਰਿੰਗ ਨੂੰ ਸ਼ਰਤੀ ਵਿੱਚ ਲਿਖੋ

ਵਿਚਾਰ

sscanf(string,format,آرگ1,آرگ2,آرگ ++)
ਪੈਰਾਮੀਟਰ ਵਰਣਨ
string ਲਾਜ਼ਮੀ। ਸ਼ਬਦਾਂ ਨੂੰ ਪੜ੍ਹਨ ਲਈ ਨਿਰਧਾਰਿਤ ਕਰਨਾ。
format

ਲਾਜ਼ਮੀ। ਫਾਰਮੈਟ ਨੂੰ ਨਿਰਧਾਰਿਤ ਕਰਨਾ ਜੋ ਵਰਤਣਾ ਹੈ。

ਸੰਭਵ ਫਾਰਮੈਟ ਮੁੱਲ:

  • %% - ਇੱਕ ਪੈਂਸਿਲ ਵਾਪਸ ਦੇਣਾ %
  • %c - ਏਸੀਐੱਸੀ ਮੁੱਲ ਦਾ ਅੱਖਰ
  • %d - ਸਿਰਫ ਪਜ਼ੈਟੀਵ ਦਸਮੀ ਸੰਖਿਆ (ਨਕਾਰਾਤਮਕ, 0, ਪਜ਼ੈਟੀਵ)
  • %e - ਛੋਟੇ ਅੱਖਰਾਂ ਵਿੱਚ ਵਿਗਿਆਨਕ ਗਿਣਤੀ (ਉਦਾਹਰਨ 1.2e+2)
  • 躑ਿਰਫ ਪਜ਼ੈਟੀਵ ਦਸਮੀ ਸੰਖਿਆ (ਗਿਆਰਾ 0)
  • %f - ਫਲੌਟਿੰਗ ਪੁਆਇੰਟ ਸੰਖਿਆ
  • %o - ਅੱਠਵੀਂ ਸੰਖਿਆ
  • %s - ਸਟ੍ਰਿੰਗ
  • %x - ਹੈਕਸਾਡੈਸੀਮਲ ਸੰਖਿਆ (ਛੋਟੇ ਅੱਖਰਾਂ)
  • %X - 16 ریٹرنام (بڑی حروف)

اضافی فارمیٹ کی قیمتیں۔ ضرور % اور حرف کے درمیان رکھی جائیں (مثلاً %.2f):

  • + (پرنامہ یا منفی نشان کا استعمال کریں تاکہ اعداد کا مثبت یا منفی نشان کا مقرر کیا جائے، جبکہ صرف منفی اعداد کو نشان کیا جاتا ہے)
  • ' (تعبیر کے لئے کیا استعمال کریں، جبکہ کھالی جگہ کا استعمال کیا جاتا ہے، وہی کی ترتیب کے ساتھ استعمال کیا جائیگا)
  • - (متغیر کی چوڑائی کو بائیں طرف کی جانب بندبست کریں)
  • .[0-9] (متغیر کی کمترین چوڑائی کا مقرر کریں)
  • .[0-9] (اعداد کی نصف کو قائم کریں یا زیادہ سے زیادہ لفظ کی لمبائی کا مقرر کریں)

تعلیمات:اگر متعدد بالا کی فارمیٹ کی قیمتیں استعمال کی جائیں تو وہ ضرور بالا کی ترتیب سے استعمال کی جائیں گے۔

آرگ1 اختیارتی۔ استعمال کی جانب کی پہلی متغیرات ذخیرہ کریں۔
آرگ2 اختیارتی۔ استعمال کی جانب کی دوسری متغیرات ذخیرہ کریں۔
آرگ ++ اختیارتی۔ استعمال کی جانب کی تیسرے اور چوتھے متغیرات، وغیرہ ذخیرہ کریں۔

تکنیکی تفصیلات

واپس کی گئی قیمتیں: اگر صرف دو پارامتر کو اس فنکشن کو دیا جائے تو اعداد تفریق کی شکل میں واپس لایا جائیگا۔ در غیر اینچہ، اگر اضافی پارامتر دیئے جائیں تو پارسی کئے گئے اعداد ان پارامتروں میں ذخیرہ کئے جائیں گے۔ اگر پارسی کئے گئے نشان کوئی پارامتروں کی تعداد سے زیادہ ہو تو خطا آئی جائیگی۔ اگر نشان کوئی پارامتروں کی تعداد سے کم ہو تو اضافی پارامتروں میں NULL ذخیرہ کئے جائیگا。
PHP ورژن: 4.0.1+

بیشتر مثال

مثال 1

فارمیٹ کی قیمتیں %s، %d اور %c کا استعمال کریں:

<?php
$ستر = " اگر آپ 4 کو 2 سے تقسیم کریں تو آپ 2 مل جائیں گے";
$فارمیٹ = اسکرینف($ستر,"%s %s %s %d %s %d %s %s %c");
پرنٹ_آر($فارمیٹ);
?>

چلاؤنے والا مثال