Comment utiliser la fonction d'analyse de chaînes directement en PHP ? L'article suivant vous expliquera comment écrire des fonctions d'analyse directe dans les chaînes PHP. J'espère qu'il vous sera utile !
Les chaînes en PHP ne peuvent théoriquement pas analyser les fonctions, seulement les variables. Récemment, j'ai découvert une manière spéciale d'écrire qui permet d'analyser directement les fonctions d'analyse de chaînes.
Écriture
// 单行 ${!${''} = 代码} // 多行 ${!${''} = 代码 }
Personnellement, je pense que cette méthode d'écriture est en fait obtenue en analysant des variables. =
左边是一个特殊名称的变量,=
Tant que le bloc de code à droite correspond à la variable d'affectation, il peut être analysé dans la chaîne.
Exemple
Le code suivant est uniquement destiné à l'apprentissage et à la communication. Cette façon d'écrire n'est pas recommandée dans le travail réel.
Un,
$fruits = implode('、', ['apple', 'banana']); var_dump("fruits: $fruits."); // 正常写法解析变量 // string(23) "fruits: apple、banana." var_dump("fruits: implode('、', ['apple', 'banana'])."); // 错误写法不能够解析函数 // string(44) "fruits: implode('、', ['apple', 'banana'])." var_dump("fruits: ${!${''} = implode('、', ['apple', 'banana'])}."); // 特殊写法解析函数成功 // string(23) "fruits: apple、banana." var_dump("fruits: ${!${''} = implode('、', [ 'apple', 'banana' ])}." ); // 多行书写依然解析函数成功 // string(23) "fruits: apple、banana."
Deux,
var_dump("fruits: ${!${''} = $fruit ?? 'apple'}."); // string(14) "fruits: apple." var_dump("fruits: ${!${''} = isset($fruit) ? $fruit : 'apple'}."); // string(14) "fruits: apple."
Trois,
$fruit = function (){ return 'banana'; }; var_dump("fruits: ${!${''} = $fruit() }."); // string(15) "fruits: banana." var_dump("fruits: ${!${''} = call_user_func(function (){ $fruits = [ 'apple', 'banana' ]; return implode('、', $fruits); }) }."); // string(23) "fruits: apple、banana."
Quatre,
class Fruit { public function __toString() { return 'banana'; } } var_dump("fruits: ${!${''} = new Fruit() }."); // string(15) "fruits: banana."
Apprentissage recommandé : "Tutoriel vidéo PHP "
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!