PDA

View Full Version : مبتدی: مشکل عجیب با explode !!



ameri110
چهارشنبه 24 خرداد 1391, 13:01 عصر
سلام
من یه متغیر دارم که می خواهم اولین کلمش رو با استفاده از تابع explode بگیرم


$data = $users_username[1];
$user_username = explode(" ", $data);
echo $user_username[0];


خروجی به این صورته:
2 Password= MACAddress= IPAddressLow=255.255.255.255 IPAddressHigh=255.255.255.255 ServiceMask=254 MaxConn=-1 BandWidth=-1 BandWidth2=-1 WebFilter=-1 TimeSchedule=-1 EnableUserPassword=0 EnableIPAddress=0 EnableMACAddress=0 Enable=1 BelongsGroup=0 BelongsGroupName= IsGroup=0 AutoDisable=0 DisableDateTime=2012-06-11

ولی وقتی بجای $data مقدارش رو میزارم خروجی رو درست نشون میده. خورجی = 2
یعنی به این صورت:



$user_username = explode(" ", '2 Password= MACAddress= IPAddressLow=255.255.255.255 IPAddressHigh=255.255.255.255 ServiceMask=254 MaxConn=-1 BandWidth=-1 BandWidth2=-1 WebFilter=-1 TimeSchedule=-1 EnableUserPassword=0 EnableIPAddress=0 EnableMACAddress=0 Enable=1 BelongsGroup=0 BelongsGroupName= IsGroup=0 AutoDisable=0 DisableDateTime=2012-06-11 17:08:11 EnableLeftTime=0 [User002]');
echo $user_username[0];


:متفکر:

djsaeedkhan
چهارشنبه 24 خرداد 1391, 16:40 عصر
سلام
خوب اگر می خوای کاراکتر اول رو برداری می تونی از تابع sub_str استفاده کنی و فقط کاراکتر اول رو برداری

ameri110
چهارشنبه 24 خرداد 1391, 17:29 عصر
نه من می خواهم کلمه اول رو بردارم
راستی اگه بخواهم بدونم اولین اسپیس کارکتر چندومه باید چیکار کنم ؟
یا چجوری میشه یه کارکتر از آخر یه استرینگ حذف کرد ؟

MMSHFE
چهارشنبه 24 خرداد 1391, 23:52 عصر
دوست عزیز الآن داره به شما خروجی درست میده. شما برحسب کارکتر Space تبدیل به آرایه کردین و اولین خونه رو گرفتین که میشه همون عدد 2
اگه کلمه بعدیشو میخواین، باید خونه بعدی آرایه رو (اندیس 1) چاپ کنید.

راستی اگه بخواهم بدونم اولین اسپیس کارکتر چندومه باید چیکار کنم ؟
echo strpos($data, ' ');

یا چجوری میشه یه کارکتر از آخر یه استرینگ حذف کرد ؟

echo substr($data, 0, -1);
موفق باشید.