স্ট্রিং আক্ষরিকের সাথে একটি পিএইচপি ভেরিয়েবলের মিশ্রণ


140

বলুন আমার একটি পরিবর্তনশীল আছে $testএবং এটি সংজ্ঞায়িত রয়েছে:$test = 'cheese'

আমি আউটপুট cheeseyকরতে চাই, যা আমি এটির মতো করতে পারি:

echo $test . 'y'

তবে আমি কোডটিকে আরও ভালো কিছুতে (যা কাজ করবে না) এর সরলকরণ করতে পছন্দ করব:

echo "$testy"

yচিকিত্সার থেকে পৃথক হয়ে থাকার মতো চিকিত্সা করার কি কোনও উপায় আছে ?


1
দ্বারা $test = cheese;আপনি বোঝানো $test = 'cheese'; আপনার পোস্ট শেষে (যদি আমি ভুল নই) ...
ওদেরকে বিতাড়নের

উত্তর:


242
echo "{$test}y";

সরাসরি স্ট্রিংগুলিতে ভেরিয়েবলগুলি ইন্টারপোল্ট করার সময় আপনি অস্পষ্টতা দূর করতে ব্রেস ব্যবহার করতে পারেন।

এছাড়াও, এটি একক উদ্ধৃতি দিয়ে কাজ করে না। তাই:

echo '{$test}y';

আউটপুট হবে

{$test}y

1
এই জাতীয় পদ্ধতিতে ফাংশন কলগুলি ইনলাইন করাও কি সম্ভব? এর অনুরূপ কিছু"foo{implode(',', [abc])}bar"
PL

নিবন্ধ প্রসেসিংয়ের পরে বিল্ডিং স্ট্রিংগুলি প্রায়শই করা হয়। আপনার আউটপুট প্রস্তুত করার মাঝে ফাংশনগুলিতে কল করা এটি প্রায়শই যা চান তা নয়। প্রথমে ফাংশনটি কল করার বিষয়ে বিবেচনা করুন, ফলাফলটি একটি ভেরিয়েবলের মধ্যে সঞ্চয় করে তারপরে আপনি স্ট্রিংয়ে এটি অন্তর্ভুক্ত করতে পারেন echo "like so: $var";
জোহেম কুয়েজ্পার্স

একটি স্ট্রিংয়ের মধ্যে দুটি পৃথক স্ট্রিংয়ের মূল্যায়ন করে এমন একটি টের্নারি অপারেটর কীভাবে এম্বেড করবেন?
ওল্ডবয়

50

{}আপনার ভেরিয়েবলের চারপাশে এটি পরে কী থেকে আলাদা করতে ব্যবহার করতে পারেন :

echo "{$test}y"

রেফারেন্স হিসাবে, আপনি পিএইচপি ম্যানুয়ালটির ভেরিয়েবল পার্সিং - কমপ্লেক্স (কোঁকড়ানো) সিনট্যাক্স বিভাগটি দেখে নিতে পারেন ।


ধন্যবাদ। আমি স্ট্রিং ম্যানুয়ালটি পড়ার চেষ্টা করেছি তবে ঠিক কী ছিল তা নিশ্চিত ছিলাম না আমি যা যা করছি তার জন্য এটি অনুসন্ধান করতে চাই।
ম্যাট ম্যাকডোনাল্ড

2
আপনাকে স্বাগতম :-) হ্যাঁ, সঠিক বিভাগটি সন্ধান করা সবসময় সহজ নয়, যখন আপনি সত্যিই জানেন না আপনি কী কী সন্ধান করছেন ^^
পাস্কাল মার্টিন

আপনি একবার।} এর অভ্যন্তরে প্রবেশ করার পরে, আপনি কেবল পরিবর্তনশীল নামগুলি যেমন {$ x-> y [3]} বা যেকোনো কিছু ব্যবহার করতে পারেন তা উল্লেখযোগ্য।
টেক্সটজিক

3

উদাহরণ:

$test = "chees";
"${test}y";

এটি আউটপুট দেবে:

গোলগাল

এটি ঠিক আপনি যা খুঁজছেন তা।


-3
$bucket = '$node->' . $fieldname . "['und'][0]['value'] = " . '$form_state' . "['values']['" . $fieldname . "']";

print $bucket;

উৎপাদনের:

$node->mindd_2_study_status['und'][0]['value'] = $form_state['values']
['mindd_2_study_status']
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.