{"id":674,"date":"2020-05-23T20:06:29","date_gmt":"2020-05-23T17:06:29","guid":{"rendered":"https:\/\/ek.oa.edu.ua\/Kukhta\/test3\/?p=674"},"modified":"2020-05-23T20:06:29","modified_gmt":"2020-05-23T17:06:29","slug":"kontrol-typu","status":"publish","type":"post","link":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/kontrol-typu\/","title":{"rendered":"\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0442\u0438\u043f\u0443"},"content":{"rendered":"<p>\u0423 PHP 5 \u0454 \u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u043d\u043d\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044e \u0442\u0438\u043f\u0456\u0432. \u041f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0456 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c \u0454 \u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u0438\u0442\u0438 \u0434\u0430\u043d\u0456 \u043d\u0430 \u0442\u0430\u043a\u0456 \u0442\u0438\u043f\u0438: \u043e\u0431&#8217;\u0454\u043a\u0442\u0438 (\u0448\u043b\u044f\u0445\u043e\u043c \u0432\u043a\u0430\u0437\u0456\u0432\u043a\u0438 \u0456\u043c\u0435\u043d\u0456 \u043a\u043b\u0430\u0441\u0443 \u0432 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0456 \u0444\u0443\u043d\u043a\u0446\u0456\u0457), \u0456\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438, \u043c\u0430\u0441\u0438\u0432\u0438, \u043a\u043e\u043b\u0431\u0435\u043a\u0438 \u0437 \u0442\u0438\u043f\u043e\u043c callable (\u043f\u043e\u0447\u0438\u043d\u0430\u044e\u0447\u0438 \u0437 PHP 5.4).<\/p>\n<p>\u041f\u0440\u0438\u043a\u043b\u0430\u0434 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u043d\u043d\u044f:<\/p>\n<pre class=\"prettyprint linenums\"><span class=\"hljs-preprocessor\">&lt;?php<\/span>\r\n<span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">MyClass<\/span> <\/span>{\r\n\t\r\n\t<span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span> <span class=\"hljs-title\">names<\/span><span class=\"hljs-params\">(array <span class=\"hljs-variable\">$names<\/span>)<\/span> <\/span>{ <span class=\"hljs-comment\">\/\/ \u0442\u0438\u043f array<\/span>\r\n\t\t<span class=\"hljs-variable\">$res<\/span> = <span class=\"hljs-string\">\"&lt;ul&gt;\"<\/span>;\r\n\t\t<span class=\"hljs-keyword\">foreach<\/span>(<span class=\"hljs-variable\">$names<\/span> <span class=\"hljs-keyword\">as<\/span> <span class=\"hljs-variable\">$name<\/span>) {\r\n\t\t\t<span class=\"hljs-variable\">$res<\/span> .= <span class=\"hljs-string\">\"&lt;li&gt;{$name}&lt;\/li&gt;\"<\/span>;\r\n\t\t}\r\n\t\t<span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-variable\">$res<\/span> .= <span class=\"hljs-string\">\"&lt;\/ul&gt;\"<\/span>;\r\n\t}\r\n\t\r\n\t<span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span> <span class=\"hljs-title\">otherClassTypeFunc<\/span><span class=\"hljs-params\">(OtherClass <span class=\"hljs-variable\">$otherClass<\/span>)<\/span> <\/span>{ <span class=\"hljs-comment\">\/\/ \u0442\u0438\u043f OtherClass<\/span>\r\n\t\t<span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-variable\">$otherClass<\/span>-&gt;var1;\r\n\t}\r\n}\r\n\r\n<span class=\"hljs-variable\">$obj<\/span> = <span class=\"hljs-keyword\">new<\/span> MyClass;\r\n\r\n<span class=\"hljs-variable\">$names<\/span> = <span class=\"hljs-keyword\">array<\/span>(\r\n\t<span class=\"hljs-string\">'\u0406\u0432\u0430\u043d \u0410\u043d\u0434\u0440\u0454\u0454\u0432'<\/span>,\r\n\t<span class=\"hljs-string\">'\u041e\u043b\u0435\u0433 \u0421\u0438\u043c\u043e\u043d\u043e\u0432'<\/span>,\r\n\t<span class=\"hljs-string\">'\u0410\u043d\u0434\u0440\u0456\u0439 \u0404\u0444\u0440\u0435\u043c\u043e\u0432'<\/span>,\r\n\t<span class=\"hljs-string\">'\u041e\u043b\u0435\u043a\u0441\u0456\u0439 \u0421\u0430\u043c\u0441\u043e\u043d\u043e\u0432'<\/span>\r\n);\r\n<span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-variable\">$obj<\/span>-&gt;names(<span class=\"hljs-variable\">$names<\/span>); <span class=\"hljs-comment\">\/\/ \u043f\u0440\u0430\u0446\u044e\u0454<\/span>\r\n\r\n<span class=\"hljs-variable\">$names<\/span> = <span class=\"hljs-string\">\"\u041e\u043b\u0435\u0433 \u0421\u0438\u043c\u043e\u043d\u043e\u0432\"<\/span>;\r\n\r\n<span class=\"hljs-comment\">\/\/ \u043e\u0442\u0440\u0438\u043c\u0430\u0454\u043c\u043e \u0444\u0430\u0442\u0430\u043b\u044c\u043d\u0443 \u043f\u043e\u043c\u0438\u043b\u043a\u0443: Argument 1 passed to MyClass::names() must be of the type array, string given<\/span>\r\n<span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-variable\">$obj<\/span>-&gt;names(<span class=\"hljs-variable\">$names<\/span>); \r\n\r\n<span class=\"hljs-comment\">\/\/ \u043e\u0442\u0440\u0438\u043c\u0430\u0454\u043c\u043e \u0444\u0430\u0442\u0430\u043b\u044c\u043d\u0443 \u043f\u043e\u043c\u0438\u043b\u043a\u0443: Argument 1 passed to MyClass::names() must be an instance of OtherClass, string given<\/span>\r\n<span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-variable\">$obj<\/span>-&gt;otherClassTypeFunc(<span class=\"hljs-string\">\"test string\"<\/span>);\r\n<span class=\"hljs-preprocessor\">?&gt;<\/span><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u0423 PHP 5 \u0454 \u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u043d\u043d\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044e \u0442\u0438\u043f\u0456\u0432. \u041f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0456 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c \u0454 \u043c\u043e\u0436\u043b\u0438\u0432\u0456\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u0438\u0442\u0438 \u0434\u0430\u043d\u0456 \u043d\u0430 \u0442\u0430\u043a\u0456 \u0442\u0438\u043f\u0438: \u043e\u0431&#8217;\u0454\u043a\u0442\u0438 (\u0448\u043b\u044f\u0445\u043e\u043c \u0432\u043a\u0430\u0437\u0456\u0432\u043a\u0438 \u0456\u043c\u0435\u043d\u0456 \u043a\u043b\u0430\u0441\u0443 \u0432 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0456 \u0444\u0443\u043d\u043a\u0446\u0456\u0457), \u0456\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0438, \u043c\u0430\u0441\u0438\u0432\u0438, \u043a\u043e\u043b\u0431\u0435\u043a\u0438 \u0437 \u0442\u0438\u043f\u043e\u043c callable (\u043f\u043e\u0447\u0438\u043d\u0430\u044e\u0447\u0438 \u0437 PHP 5.4). \u041f\u0440\u0438\u043a\u043b\u0430\u0434 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u043d\u043d\u044f: &lt;?php class MyClass { public function names(array $names) { \/\/ \u0442\u0438\u043f array $res = &#8220;&lt;ul&gt;&#8221;; foreach($names as [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[22],"tags":[],"class_list":["post-674","post","type-post","status-publish","format-standard","hentry","category-oop"],"_links":{"self":[{"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/posts\/674","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/comments?post=674"}],"version-history":[{"count":1,"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/posts\/674\/revisions"}],"predecessor-version":[{"id":675,"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/posts\/674\/revisions\/675"}],"wp:attachment":[{"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/media?parent=674"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/categories?post=674"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ithub.oa.edu.ua\/webdev\/php\/wp-json\/wp\/v2\/tags?post=674"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}