- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エラーがついて)
エラーがついてプログラム初心者です
このQ&Aのポイント
- 教えていただいたコードをサーバーで使ったところエラーが発生しました。xamppでは動作していたため、phpのバージョンによるエラーかと思われます。現在のレンタルサーバーのphpバージョンは5.2.5ですが、5.5.2へのアップグレード予定があるようです。具体的な日程は不明です。エラーは「Parse error: syntax error, unexpected T_FUNCTION in hoge.php on line 59」というもので、preg_replace_callback関数の中で予期しないT_FUNCTIONエラーが発生しています。解決方法を教えていただけると助かります。
- プログラム初心者ですが、サーバーで使ったコードがエラーになりました。xamppでは正常に動いているため、phpのバージョンによるものだと思います。現在のレンタルサーバーではphp5.2.5を使用していますが、5.5.2にアップグレードする予定があるようです。具体的な予定は不明です。エラーメッセージは「Parse error: syntax error, unexpected T_FUNCTION in hoge.php on line 59」です。preg_replace_callback関数の中に予期しないT_FUNCTIONエラーが発生しています。解決方法を教えていただけると助かります。
- プログラム初心者です。サーバーでコードを使ってみたところエラーが発生しました。xamppでは問題なく動作していたため、phpのバージョンによるエラーだと考えられます。現在のレンタルサーバーのphpバージョンは5.2.5で、アップグレード予定はありますが具体的な日程は不明です。エラーメッセージは「Parse error: syntax error, unexpected T_FUNCTION in hoge.php on line 59」となっています。preg_replace_callback関数の中でT_FUNCTIONエラーが発生しています。解決策を教えていただけると助かります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#244856
回答No.2
ああ、これ確かuse句でカウンタを参照して、置換回数に上限設けていましたね…これだと無名関数ではない通常の関数では実現しにくく、クラスを使ったほうが実装が綺麗になると思います。 以前作成した関数には冗長な部分が多く、エスケープも誤って2重にしてしまっている部分もあったので、5.2でも動く形で書き直してみました。「2個以内の動画に該当するURL」以外のURLについても、aタグを使ってリンクするようにしまいした。 ※ 確認のため現在は最大値99に設定していますが、2に変更して使ってください http://pastebin.com/xtTgsLKA http://ideone.com/ppEqLZ
その他の回答 (1)
noname#244856
回答No.1
PHP5.3以降でしか無名関数は使えません。 http://php.net/manual/ja/functions.anonymous.php 対処法としては…非常に不恰好になりますが、普通に関数を定義してコールバックとして「関数名」を文字列で渡すしかありませんね。
質問者
お礼
回答ありがとうございます 回答2のコードは自分がまだまだなんだと思いしらされたコードでしたorz 当分、初心者マークはとれなさそうです
お礼
うまくうごきました。ありがとうございます コードのレベルが高くて使うのでやっとでした 助かりました。感謝いたします