نقلاً عن الثوابت في PHP: "هذا هو my_constant"
سؤال
أريد استخدام ثابت في PHP ، لكني أريد أيضًا وضعه داخل عروض أسعار مزدوجة مثل المتغير. هل هذا بكل الأحوال ممكن؟
define("TESTER", "World!");
echo "Hello, TESTER";
من الواضح أن الإخراج "مرحبًا ، اختبار" ، لكن ما أريده حقًا هو شيء مثل:
$tester = "World!";
echo "Hello, $tester";
المخرجات "مرحبا ، العالم!".
المحلول
آسف ، هذه ليست الطريقة التي تعمل بها الثوابت في PHP. يمكنك وضع المتغيرات في اقتباسات مزدوجة و heredocs ولكن ليس الثوابت.
نصائح أخرى
أوصيك لاستخدام التسلسل لأن:
- عندما تستخدم متغيرًا في سلسلة اقتباسات مزدوجة ، فإن رؤيةك ليست جيدة ؛
- عند استخدام سلسلة عروض أسعار مزدوجة يمكن أن يعالج PHP ببطء ؛
- لا تستخدم ثابتًا في سلسلة ، لأنه ليس لديك أي محدد إلى PHP يعرف ما هو الثابت.
التسلسل هو الطريق للذهاب.
ما لم تكن تريد طريقة القرد الشرير ، غير الفعال ، غير الفعال ،
echo preg_replace("/TESTER/",TESTER,$original_content);
بأي حال من الأحوال ، ما لم تكتب وظيفة تحليل السلسلة الخاصة بك
لقد وجدت أنه عندما يكون concatenation من ثابت مشكلة ، فإن استخدام SprintF للحصول على سلسلتي عادة ما يكون الطريقة التي أريد الذهاب إليها في النهاية.
بدلا من ذلك ، افعل
"this is " . MY_CONSTANT
أو
"this is " . constant("MY_CONSTANT");
لا تنتمي إلى StackOverflow