关于php闭包附加状态的问题
直接上代码:
<code><?php function enclosePerson($name){ return function($doCommand) use ($name) { return sprintf('%s, %s', $name, $doCommand); } } $func = enclosePerson("Simon"); echo $func("you are a cool man!"); ?> </code>
理论应该打印:Simon, you are a cool man!
但实际打印为空!
什么问题造成的呢?
php version:5.5.29
回复内容:
直接上代码:
<code><?php function enclosePerson($name){ return function($doCommand) use ($name) { return sprintf('%s, %s', $name, $doCommand); } } $func = enclosePerson("Simon"); echo $func("you are a cool man!"); ?> </code>
理论应该打印:Simon, you are a cool man!
但实际打印为空!
什么问题造成的呢?
php version:5.5.29
因为你语法错误
return 后面少了个 ;
<code>return function($doCommand) use ($name) { return sprintf('%s, %s', $name, $doCommand); };</code>
晕,LZ是在web页面中写的吧? 一片空白这种问题很明显是出错了。而且是致命性的错误。看看错误日志就知道了。
从我这边看到的错误是:
<code>PHP Parse error: syntax error, unexpected '}' in - on line 6</code>

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
