URL টি পিএইচপি সহ নির্দিষ্ট স্ট্রিং রয়েছে কিনা তা পরীক্ষা করুন


111

URL টিতে কিছু শব্দ উপস্থিত রয়েছে কিনা তা জানতে চাই।

উদাহরণস্বরূপ, যদি ওয়ার্ড কারটি ইউআরএলে থাকে তবে www.domain.com/car/ বা www.domain.com/car/audi/ এর মতো এটি 'গাড়ীর উপস্থিতি' প্রতিধ্বনিত হবে এবং যদি কিছু না থাকে তবে এটি 'গাড়ি নেই' প্রতিধ্বনিত হবে would ।



আপনি কেবল গাড়ি শব্দটি সন্ধান করছেন বা আপনি যদি গাড়ী বা গাড়িও প্রকার চান তবে এটিও নির্ভর করে। আপনার প্রাগ_ম্যাচ, স্ট্রপোস, বিস্ফোরিত এবং ইন_আরে / অ্যারে_সার্চ দরকার হতে পারে, সত্যই নির্ভর করে। আপনি যদি কিছু সাধারণ চান, তবে পরামর্শ হিসাবে কেবল স্ট্রপোস ব্যবহার করুন
— ম্যাট

এই স্ট্যান্ডলোন লাইব্রেরিতেs($_SERVER['REQUEST_URI'])->contains('car') যেমন পাওয়া যায় আপনি তেমন সহায়ক হতে পারেন ।
— কাওয়

ইউআরএলে "ভয় পেয়েছি" শব্দটি থাকলে কী হবে? সেই মুদ্রণটি কি "গাড়ীর অস্তিত্ব আছে"? যদি তা না হয় তবে এখানে বেশিরভাগ উত্তরই ভুল।
— doug65536

উত্তর:


227

এরকম কিছু চেষ্টা করুন। প্রথম সারিতে আপনার ইউআরএল তৈরি করে এবং বাকি অংশে এটি "গাড়ী" শব্দটি অন্তর্ভুক্ত করে কিনা তা পরীক্ষা করে।

$url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];


if (strpos($url,'car') !== false) {
    echo 'Car exists.';
} else {
    echo 'No cars.';
}

আমার প্রকল্পের জন্য পারফেক্ট! ধন্যবাদ!
— ওয়েবদেবকভ

এটাই আমি খুঁজছিলাম পারফেক্ট, ধন্যবাদ
— জুনেদফারুকুই

1
এটি একটি ভাল সমাধান তবে কেবল সতর্ক থাকুন যে এটি যে কোনও জায়গায় গাড়ি থাকা কোনও ইউআরএলের সাথে মেলে। উদাহরণস্বরূপ www.domain.com/car-pricingবা www.domain.com/carparksবৈধতা এবং আউটপুট হবে Car exists। হতে পারে এটি আপনার ক্ষেত্রে গুরুত্বপূর্ণ নয় তবে অন্যদের জন্য এটি প্রাসঙ্গিক হতে পারে!
— জাভাকাদব্রা

ঠিক আমি মহান খুঁজছি!
— বিঘ্নেশ কৃষ্ণমূর্তি

$url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; echo count(strpos($url,'category'));ইউআরএল বিদ্যমান 1কিনা তা নির্বিশেষে আমাকে দেয় categoryকোন ধারণা কেন?
— Si8

66

আমি মনে করি সবচেয়ে সহজ উপায়:

if (strpos($_SERVER['REQUEST_URI'], "car") !== false){
// car found
}

পারফেক্ট ... এর মধ্যে "ইভেন্টস" এর সাথে কোনও ইউআরএল খুঁজে পেতে আমার উদাহরণস্বরূপ / বিজ্ঞাপন / পৃষ্ঠার নামটি মিলানো দরকার এবং এটি কার্যকর!
— টিঙ্গো

আমি গত সপ্তাহে 4 টি বিভিন্ন প্রকল্পে এটি বেশ কয়েকবার ব্যবহার করেছি। সহজ। ধন্যবাদ।
— পেগিউস

এটি সম্পূর্ণ ইউআরএল পরীক্ষা করে না; শুধু পথ। এটি স্কিম, ডোমেন, পোর্ট, ক্যোয়ারী প্যারামিটার বা খণ্ডগুলির বিরুদ্ধে পরীক্ষা করবে না।
— kloddant





3

কটাক্ষপাত আছে strpos ফাংশন:

if(false !== strpos($url,'car')) {
    echo 'Car exists!';
}
else {
    echo 'No cars.';
}

1

ওয়ার্ডপ্রেস কীভাবে কাজ করে তার ধারণার অনুরূপ আপনি একটি .htaccess পদ্ধতি চেষ্টা করতে পারেন।

তথ্যসূত্র: http://monkeytooth.net/2010/12/htaccess-php-how-to-wordpress-slugs/

তবে আমি নিশ্চিত নই যে আপনি যা বলছেন ঠিক তেমন কথা বলে কিনা ..



1

অবশ্যই এটি সঠিক উপায়ে ...

$url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];


if (!strpos($url,'mysql')) {
echo 'No mysql.'; //swapped with other echo statement
} else {
echo 'Mysql exists.';
}

অন্যথায় এটির বিপরীতে প্রতিবেদন করা উচিত ...


1

এটি আমার পক্ষে কাজ করেছে:

// Check if URL contains the word "car" or "CAR"
   if (stripos($_SERVER['REQUEST_URI'], 'car' )!==false){
   echo "Car here";
   } else {
   echo "No car here";
   }
যদি আপনি প্রতিধ্বনিতে এইচটিএমএল ব্যবহার করতে চান তবে "" এর পরিবর্তে '' ব্যবহার করতে ভুলবেন না।
আমি আমার ওয়েবপৃষ্ঠায় https://geaskb.nl/ এ সতর্কতা দেখানোর জন্য এই কোডটি ব্যবহার করি 
যেখানে ইউআরএলটিতে "ওমনিক" শব্দটি রয়েছে 
তবে পৃষ্ঠাগুলিতে সতর্কতাটি গোপন করুন যা URL এ "ওমনিক" শব্দটি ধারণ করে না।

0

ইউআরএল প্যারামিটার এবং বিশ্বব্যাপী ভেরিয়েবল থেকে প্রাপ্ত $_GETযা বাস্তবে একটি অ্যারে। সুতরাং, কোনও URL টিতে কোনও প্যারামিটার রয়েছে কিনা তা জানতে, আপনি isset()ফাংশনটি ব্যবহার করতে পারেন ।

if (isset($_GET['yourparametername'])) {
//The parameter you need is present
}

এরপরে, আপনি এই জাতীয় প্যারামিটারের আলাদা অ্যারে তৈরি করতে পারেন আপনার একটি ইউআরএল সংযুক্ত করতে হবে।

উদাহরণ স্বরূপ:

if(isset($_GET['param1'])) {
\\The parameter you need is present
$attachList['param1'] = $_GET['param1'];
}

if(isset($_GET['param2'])) {
$attachList['param2'] = $_GET['param2];
}

এখন, আপনার একটি ?প্রতীক প্রয়োজন কিনা তা জানতে , কেবল এই অ্যারেটি গণনা করুন

if(count($attachList)) {
    $link .= "?";
    // and so on
}

হালনাগাদ:

কোনও প্যারামিটার সেট করা আছে কিনা তা জানতে, কেবল $ _GET গণনা করুন

if(count($_GET)) {
     //some parameters are set
}

0
if ( stristr( SITE_HOST, 'your site' ) ) {
    $protocol = ( !empty( $_SERVER['HTTPS'] ) && $_SERVER['HTTPS'] == 'on' ) ? 'https://' : 'http://';
    $request = ( !empty( $_SERVER['HTTP_X_ORIGINAL_REQUEST'] ) ) ? $_SERVER['HTTP_X_ORIGINAL_REQUEST'] : $_SERVER['REQUEST_URI'];
    echo $protocol .'your site'. $request;
}

0

আপনি এই ফাংশনটি এই কোড স্যার হিসাবে ব্যবহার করতে পারেন

 if((strpos($_SERVER['REQUEST_URI'],'car') !== false))
        echo'<h3 class=" edit-top">Car Exist</h3>';
    else
        echo'<h3 class=" edit-top">Not</h3>';

-1
$url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
if ( strpbrk($url, 'test') ) {
    // Do something...
}
else {
    // Do another thing
}

(> পিএইচপি 5)


এটি প্রশ্নের উত্তর দেয় তবে এর জন্য আরও ভাল পদ্ধতি রয়েছে ... এই ফাংশনটি পাওয়া অক্ষর থেকে শুরু করে একটি স্ট্রিং দেয় ... strpbrk()ডকুমেন্টেশন এখানে
— jagb
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.