質問編集履歴

3

追記

2020/09/25 04:34

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -75,3 +75,41 @@
75
75
  smarty2.6.27
76
76
 
77
77
  [こちらのサイト](https://www.smarty.net/)を確認する限り、バージョンは上げた方が良さそうなので試してみます。
78
+
79
+ 【追記3】
80
+
81
+ smarty2.6.27から3.1.34にアップデートしました。
82
+
83
+ ```
84
+
85
+ Fatal error: Uncaught Error: Class 'Smarty_Internal_Undefined' not found in
86
+
87
+ /var/www/axia/library/Smarty/sysplugins/smarty_internal_extension_handler.php:168 Stack trace: #0
88
+
89
+ /var/www/axia/library/Smarty/sysplugins/smarty_internal_extension_handler.php(130): Smarty_Internal_Extension_Handler->__get('get_template_va...') #1
90
+
91
+ /var/www/axia/library/Smarty/sysplugins/smarty_internal_data.php(290): Smarty_Internal_Extension_Handler->_callExternalMethod(Object(Smarty), 'get_template_va...', Array) #2
92
+
93
+ /var/www/axia/application/library/Zend_View_Smarty.php(341): Smarty_Internal_Data->__call('get_template_va...', Array) #3
94
+
95
+ /var/www/axia/application/modules/default/controllers/IndexController.php(30): Zend_View_Smarty->getVar('pageInfo') #4
96
+
97
+ /var/www/axia/library/Zend/Controller/Action.php(516): IndexController->indexAction() #5
98
+
99
+ /var/www/axia/library/Zend/Controller/Dispatcher/Standard.php(308): Zend_Controller_Action->dispatch('indexAction') #6
100
+
101
+ /var/www/axia/library/Zend/Controller/Front.php(955): Zend_Controller_Dispatcher_Standard- in /var/www/axia/library/Smarty/sysplugins/smarty_internal_extension_handler.php on line 168
102
+
103
+ // エラー箇所
104
+
105
+ 168 return $this->$property_name = new Smarty_Internal_Undefined($class);
106
+
107
+ ```
108
+
109
+ Smarty_Internal_Undefinedが無いと言われているようですが、アップデート時にクラスファイルは用意されている為、なぜこのエラーが出ているのかが分かっていません。
110
+
111
+ 経路を見る限りZend Frameworkも触っているので、Zend Frameworkのバージョンが古い可能性を疑っています。
112
+
113
+ 何かお分かりの方、教えていただけますでしょうか。
114
+
115
+ Zend Frameworkのバージョンは1.12.0なので、これがPHP7とsmarty3に互換が無いと考えるべきでしょうか。

2

回答に対する追記

2020/09/25 04:34

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -63,3 +63,15 @@
63
63
  恐れ入りますが、こちらに関しても何かご教授いただけますでしょうか。
64
64
 
65
65
  よろしくお願いいたします。
66
+
67
+
68
+
69
+ 【追記2】
70
+
71
+ smartyとPHPのバージョン互換のご指摘をいただいたので、追記いたします。
72
+
73
+ PHP7.3.22
74
+
75
+ smarty2.6.27
76
+
77
+ [こちらのサイト](https://www.smarty.net/)を確認する限り、バージョンは上げた方が良さそうなので試してみます。

1

追記更新

2020/09/24 07:45

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- PHPの構文エラーについて(syntax error, unexpected ''' (T_CONSTANT_ENCAPSED_STRING) )
1
+ PHPバージョンアップ後の構文エラーについて
test CHANGED
@@ -23,3 +23,43 @@
23
23
  恐れ入りますが、ご教授いただけますでしょうか?
24
24
 
25
25
  よろしくお願いいたします。
26
+
27
+
28
+
29
+ 【追記】
30
+
31
+ ご回答いただき、提示範囲に問題はないとの事なので、本エラー以前に修正した箇所で問題が発生したと思います。
32
+
33
+ ```
34
+
35
+ Warning: preg_replace_callback(): Requires argument 2, ''{php' . str_repeat(" ", substr_count('\0', " ")) .'}'', to be a valid callback in
36
+
37
+ /var/www/library/Smarty/Smarty_Compiler.class.php on line 272
38
+
39
+
40
+
41
+ // エラー発生箇所
42
+
43
+ 265 /* replace special blocks by "{php}" */
44
+
45
+ 266 //$source_content = preg_replace($search.'e', "'"
46
+
47
+ 267 $source_content = preg_replace_callback($search.'e', "'"
48
+
49
+ 268 . $this->_quote_replace($this->left_delimiter) . 'php'
50
+
51
+ 269 . "' . str_repeat(\"\n\", substr_count('\0', \"\n\")) .'"
52
+
53
+ 270 . $this->_quote_replace($this->right_delimiter)
54
+
55
+ 271 . "'"
56
+
57
+ 272 , $source_content);
58
+
59
+ ```
60
+
61
+ preg_replaceをpreg_replace_callbackに変更し、269行目の構文を色々修正しているのですが、おそらく上手くいっていないです。
62
+
63
+ 恐れ入りますが、こちらに関しても何かご教授いただけますでしょうか。
64
+
65
+ よろしくお願いいたします。