ট্র্যাক
/
PHP
PHP
/
অনুশীলনী
/
হাইস্কুলের প্রেমিক-প্রেমিকা
হাইস্কুলের প্রেমিক-প্রেমিকা

হাইস্কুলের প্রেমিক-প্রেমিকা

লার্নিং অনুশীলনী

ভূমিকা

স্ট্রিং

স্ট্রিং হলো একগুচ্ছ ক্যারেক্টার, যা কোটেশন চিহ্ন দিয়ে ঘেরা থাকে। সিঙ্গেল কোট ও ডাবল কোট, দুটোই সমর্থিত।

<?php

$where = "Spain";
$what = 'rain';

স্ট্রিংয়ের ভেতরে ভ্যারিয়েবলের মান বসানো

ডাবল কোটে লেখা স্ট্রিংয়ের ক্ষেত্রে, কোনো ভ্যারিয়েবল স্কোপে থাকা অবস্থায় সেটিকে রেফারেন্স করা হলে তার মানটি স্ট্রিংয়ের ভেতরে বসে যায়।

<?php

$answer = 42;
$expanded = "The answer to life, the universe, and everything is $answer"; 

ক্যারেক্টার এনকোডিং সাপোর্ট

ঐতিহাসিকভাবে PHP-এর স্ট্রিং ফাংশনগুলো কেবল ASCII ক্যারেক্টার সমর্থন করত, আধুনিক Unicode এনকোডিং সমর্থন করত না। প্রতিটি ASCII ক্যারেক্টারের আকার ১ বাইট, অথচ Unicode ক্যারেক্টার ১ থেকে ৪ বাইট পর্যন্ত লম্বা হতে পারে। নিরাপদে Unicode স্ট্রিং নিয়ে কাজ করতে হলে, পুরোনো ফাংশনগুলোর মাল্টিবাইট সংস্করণ দেখুন।

<?php

$byte_length = strlen('😃'); // => 4
$string_length = mb_strlen('😃'); // => 1

নির্দেশনা

এই অনুশীলনীতে আপনি হাই স্কুলের প্রেমিক-প্রেমিকাদের সোশ্যাল মিডিয়ায় তাদের ভালোবাসা প্রকাশ করতে সাহায্য করবেন, তাদের আদ্যক্ষর দিয়ে একটি ASCII হার্ট তৈরি করে:

     ******       ******
   **      **   **      **
 **         ** **         **
**            *            **
**                         **
**     J. K.  +  M. B.     **
 **                       **
   **                   **
     **               **
       **           **
         **       **
           **   **
             ***
              *

1. নামের প্রথম অক্ষরটি বের করুন

HighSchoolSweetheart::firstLetter ফাংশনটি ইমপ্লিমেন্ট করুন। এটি একটি নাম নেবে এবং সেই নামের প্রথম অক্ষরটি রিটার্ন করবে। এটি নাম থেকে অপ্রয়োজনীয় সব হোয়াইটস্পেস পরিষ্কার করবে।

<?php

$sweetheart = new HighSchoolSweetheart();
$sweetheart->firstLetter("Jane");
# => "J"

2. প্রথম অক্ষরটিকে আদ্যক্ষর হিসেবে সাজান

HighSchoolSweetheart::initial ফাংশনটি ইমপ্লিমেন্ট করুন। এটি একটি নাম নেবে এবং তার প্রথম অক্ষরটি বড় হাতের করে, শেষে একটি ডট যুক্ত করে রিটার্ন করবে। আগের ধাপে আপনি যে HighSchoolSweetheart::first_letter ডিফাইন করেছিলেন, সেটি যেন আবার ব্যবহার করেন তা নিশ্চিত করুন।

<?php

$sweetheart = new HighSchoolSweetheart();
$sweetheart->initial("jane");
# => "J."

3. পূর্ণ নামটিকে প্রথম নাম ও পদবিতে ভাগ করুন

HighSchoolSweetheart::initials ফাংশনটি ইমপ্লিমেন্ট করুন। এটি একটি পূর্ণ নাম নেবে (একটি প্রথম নাম ও একটি পদবি, যেগুলো একটি স্পেস দিয়ে আলাদা করা) এবং আদ্যক্ষরগুলো রিটার্ন করবে। আগের ধাপে আপনি যে HighSchoolSweetheart::initial ডিফাইন করেছিলেন, সেটি যেন আবার ব্যবহার করেন তা নিশ্চিত করুন।

<?php

$sweetheart = new HighSchoolSweetheart();
$sweetheart->initials("Jane Doe");
# => "J. D."

4. আদ্যক্ষরগুলো হার্টের ভিতরে বসান

HighSchoolSweetheart::pair ফাংশনটি ইমপ্লিমেন্ট করুন। এটি দুটি পূর্ণ নাম নেবে এবং একটি ASCII হার্টের ভিতরে আদ্যক্ষরগুলো রিটার্ন করবে। আগের ধাপে আপনি যে HighSchoolSweetheart::initials ডিফাইন করেছিলেন, সেটি যেন আবার ব্যবহার করেন তা নিশ্চিত করুন।

<?php

$sweetheart = new HighSchoolSweetheart();
$sweetheart->pair("Blake Miller", "Riley Lewis")
# => """
#      ******       ******
#    **      **   **      **
#  **         ** **         **
# **            *            **
# **                         **
# **     B. M.  +  R. L.     **
#  **                       **
#    **                   **
#      **               **
#        **           **
#          **       **
#            **   **
#              ***
#               *
# """
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
PHP Exercism

হাইস্কুলের প্রেমিক-প্রেমিকা শুরু করতে প্রস্তুত?

Exercism-এ সাইন আপ করুন, PHP ট্র্যাকের 11টি কনসেপ্ট122টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।