স্ট্রিং থেকে প্রথম 5 টি অক্ষর কীভাবে পাবেন


255

পিএইচপি ব্যবহার করে স্ট্রিং থেকে প্রথম 5 টি অক্ষর কীভাবে পাবেন

$myStr = "HelloWordl";

ফলাফলটি এ জাতীয় হওয়া উচিত

$result = "Hello";


উত্তর:


549

জন্য একক বাইট স্ট্রিং (যেমন মার্কিন হওয়া ASCII, আইএসও 8859 পরিবার, ইত্যাদি) ব্যবহার substrএবং জন্য বহু-বাইট স্ট্রিং (যেমন হল UTF-8, হল UTF-16, ইত্যাদি) ব্যবহার mb_substr:

// singlebyte strings
$result = substr($myStr, 0, 5);
// multibyte strings
$result = mb_substr($myStr, 0, 5);

2
ধন্যবাদ, এটির জন্য আমার এটির প্রয়োজন ছিল:if(substr($myURL, 0, 4) == "www.") $myURL = preg_replace('/www./', '', $myURL, 1);
শানেহোবান

1
আপনার সত্যিই কেবলমাত্র_আর_প্লেস ('www।', '', $ Url) প্রয়োজন; এটি বিদ্যমান কিনা তা পরীক্ষা করতে হবে না।
ডগ ক্যাসিডি

8
@ ডাওগ্যাসিডি: কি তাহলে $url = "www.subwww.myweirddomainwww.com"? প্রাথমিক চেক ছাড়া substr($url, 0, 4), ফেরত $urlনষ্ট হয় !!
Fr0zenFyr

46

ব্যবহার substr():

$result = substr($myStr, 0, 5);

substr("Häagen-Dazs", 0, 5) == "Häag"- আমি কি ভুল করছি?
ব্যবহারকারী 187291

12
@ স্টিরিফ্রোগ: আপনি সম্ভবত ইউটিএফ -8 এর মতো একটি মাল্টি-বাইট অক্ষর এনকোডিং ব্যবহার করছেন। সেক্ষেত্রে ব্যবহার করুন mb_substr
গম্বো

20

শুধুমাত্র একটি চরিত্র পাওয়ার বিকল্প উপায়।

$str = 'abcdefghij';

echo $str{5};

7
এটি ভুল প্রশ্নের সঠিক উত্তর। Downvoted।
মিকম্যাকুসা

কারণ এর জন্য কপি পেস্টিংয়ের চেয়ে বেশি প্রয়োজন?
রবার্ট পাউন্ডার

দ্রষ্টব্য: ইউটিএফ -8 এর মতো মাল্টি-বাইট অক্ষর সেটগুলির জন্য পরিবর্তে তম অক্ষরটি ব্যবহার mb_substr(i, 1)করতে হবে i। @ রবার্টপাউন্ডার - কারণ এটি একাধিক চরিত্র পাওয়ার ক্ষেত্রে প্রসারিত হয় না।
টুলমেকারস্টেভ

1
@ টলমেকারস্টেভ, আপনি যদি এমনটি বলেন; $string = "Häagen-Dazs"; $stringFirstChars = function($amount, $string) { $i=0;$done=false;$return = '';while($done == false) {$return.=$string{$i};if($amount===$i)$done=true;$i++;}return $return;}; var_dump($stringFirstChars(5, $string)); (কপি পেস্ট করুন phptester.net বা আমরা)
রবার্ট পাউন্ডার

হ্যা আমি জানি. আমি ব্যক্তিগতভাবে এটিকে হ্রাস করি নি; আমি কীভাবে এটি প্রশ্নের উত্তর দেয় না পর্যবেক্ষণ। আপনি যা লিখেছেন - এটি একটি সম্পূর্ণ উত্তর হবে: পিএইচপি-র মধ্যে কীভাবে একটির একটি চরিত্র একাধিক অক্ষর পেতে প্রসারিত তা একজন শিক্ষানবিসকে দেখানো। প্রশ্নোত্তর থেকে দরকারী সংযোজন - আপনাকে ধন্যবাদ।
টুলমেকারস্টেভ

15

আপনি substrএই ফাংশনটি ব্যবহার করতে পারেন :

echo substr($myStr, 0, 5);

দ্বিতীয় যুক্তিটি substrহ'ল আপনি কোন অবস্থানটি শুরু করতে চান তা থেকে অবস্থান এবং তৃতীয় তর্কগুলি আপনি কতগুলি অক্ষর ফিরতে চান তার জন্য।


-4

আপনি কেবল সাবস্ট্রাস্ট () ব্যবহার করে আপনার ফলাফল পেতে পারেন :

সিনট্যাক্স সাবস্ট্রাস্ট (স্ট্রিং, শুরু, দৈর্ঘ্য)

উদাহরণ

<?php
$myStr = "HelloWordl";
echo substr($myStr,0,5);
?>

আউটপুট:

 Hello

16
এই অতি দেরিতে পোস্টের কোনও মূল্য নেই এবং কেবল পৃষ্ঠাটি ফুলেছে কারণ এটি যা যা বলেছে তা ইতিমধ্যে বলা হয়েছে (বছরগুলি আগে) years যোগ করার জন্য আপনার কাছে অনন্য এবং মূল্যবান কিছু না থাকলে দয়া করে কোনও উত্তর পোস্ট করবেন না। অপ্রয়োজনীয়, দেরিতে পোস্টগুলিকে নিরুৎসাহিত করার জন্য এই উত্তরটিকে হ্রাস করা হয়েছে।
মিকম্যাকুসা

আপনি 7 বছর পরে একটি উত্তর পোস্ট করেছেন? সিরিয়াসলি?
ভ্যারিন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.