سؤال

أريد استخدام ثابت في PHP ، لكني أريد أيضًا وضعه داخل عروض أسعار مزدوجة مثل المتغير. هل هذا بكل الأحوال ممكن؟

define("TESTER", "World!");
echo "Hello, TESTER";

من الواضح أن الإخراج "مرحبًا ، اختبار" ، لكن ما أريده حقًا هو شيء مثل:

$tester = "World!";
echo "Hello, $tester";

المخرجات "مرحبا ، العالم!".

هل كانت مفيدة؟

المحلول

آسف ، هذه ليست الطريقة التي تعمل بها الثوابت في PHP. يمكنك وضع المتغيرات في اقتباسات مزدوجة و heredocs ولكن ليس الثوابت.

نصائح أخرى

أوصيك لاستخدام التسلسل لأن:

  1. عندما تستخدم متغيرًا في سلسلة اقتباسات مزدوجة ، فإن رؤيةك ليست جيدة ؛
  2. عند استخدام سلسلة عروض أسعار مزدوجة يمكن أن يعالج PHP ببطء ؛
  3. لا تستخدم ثابتًا في سلسلة ، لأنه ليس لديك أي محدد إلى PHP يعرف ما هو الثابت.

التسلسل هو الطريق للذهاب.

ما لم تكن تريد طريقة القرد الشرير ، غير الفعال ، غير الفعال ،

echo preg_replace("/TESTER/",TESTER,$original_content);

بأي حال من الأحوال ، ما لم تكتب وظيفة تحليل السلسلة الخاصة بك

لقد وجدت أنه عندما يكون concatenation من ثابت مشكلة ، فإن استخدام SprintF للحصول على سلسلتي عادة ما يكون الطريقة التي أريد الذهاب إليها في النهاية.

بدلا من ذلك ، افعل

"this is " . MY_CONSTANT

أو

"this is " . constant("MY_CONSTANT");
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top