搜尋
首頁後端開發php教程 弱类型好吗?好在哪,小弟我不知道

弱类型好吗?好在哪,我不知道
因公需要,搞起了php,它越来越让我觉得反胃.

  代码里到处都是if empty if empty
  if(!empty($CFG->aaaa)){}  
  搜索一下$CFG->aaaa从未出现过,当场吐血,然后多吐了几次就不吐了.
   
  另外,到处都是以下形式的代码,反胃
  if(){}else{
  if(){
   
  }else{

  }
  }

  最让我郁闷的是
  $a = NULL;
  $a->a = 'bbb'; 这样尽然没错,NULL是没有意义的,完全就可以不使用stdClass了  

  弱类型在javascript中演绎得如此优雅,而在php中却如此恶心
  从此我爱上了js中的未定义变量异常,至少解释器提示了我.

  这种不声明便可以使用的变量给调试,阅读带来了无尽的痛苦.
  
  抱怨归抱怨,血还是要接着吐,请高手指教php编程之道,这样或许能少吐. 

  php的编程模式是否是显示页面与处理页面分离?
  还是都同一个页面,使用if else判断?

  如果是分离的,如何实现服务器端跳转? 即在一次请求内执行流程经过多个页面,require或include?

  


 

------解决方案--------------------
强类型还是弱类型,都有各自的优缺点,不能一概而论,强类型编译质量高,代码运行快。弱类型则更灵活。
尽管php是弱类型语言,但是,良好的实践告诉我们,使用变量前先初始化是一个良好的习惯,不仅便于阅读,而且可以避免很多莫名其妙的错误。
而且,php开发的优点就是快速,轻便,如果使用强类型,恰恰违反了它的初衷。
------解决方案--------------------
处理页面和展现页面还是分开比较好吧?至于跳转现在基本上都是用框架。。。我也是刚转到php不久的,弱类型的确让我很不习惯,但我超喜欢用关键字做键的数组,很好用~
------解决方案--------------------
如果觉得不习惯,记得自己写的代码中变量初始化一下
------解决方案--------------------

php的编程模式是否是显示页面与处理页面分离?
还是都同一个页面,使用if else判断?

php有很多优秀的mvc框架
------解决方案--------------------
PHP的弱类型使用起来还是很方便的。至于你觉得它恶心,那只是你没上手。
起码,弱类型使用起来便洁,现在我们用OOP模式开发,可以做到将成员属性集中在类中声明,这样便于管理。
再想,一个页面中,变量的个数毕竟是有限的,还不至于让人无法追踪变量的地步。
如果你真不习惯它这种模式,那你可以这样:开启PHP的错误级为所有,然后将变量集中起来初始化,这样就行了。

eg:

PHP code

<?php error_reporting(E_ALL);
  $a='a';$b='b';
  echo $a;
  echo $c; //$c没有初始化,所以会抛出NOTICE级错误提示,便于你规范化代码。
?> <div class="clear">
                 
              
              
        
            </div>
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
解釋負載平衡如何影響會話管理以及如何解決。解釋負載平衡如何影響會話管理以及如何解決。Apr 29, 2025 am 12:42 AM

負載均衡會影響會話管理,但可以通過會話複製、會話粘性和集中式會話存儲解決。 1.會話複製在服務器間複製會話數據。 2.會話粘性將用戶請求定向到同一服務器。 3.集中式會話存儲使用獨立服務器如Redis存儲會話數據,確保數據共享。

說明會話鎖定的概念。說明會話鎖定的概念。Apr 29, 2025 am 12:39 AM

Sessionlockingisatechniqueusedtoensureauser'ssessionremainsexclusivetooneuseratatime.Itiscrucialforpreventingdatacorruptionandsecuritybreachesinmulti-userapplications.Sessionlockingisimplementedusingserver-sidelockingmechanisms,suchasReentrantLockinJ

有其他PHP會議的選擇嗎?有其他PHP會議的選擇嗎?Apr 29, 2025 am 12:36 AM

PHP會話的替代方案包括Cookies、Token-basedAuthentication、Database-basedSessions和Redis/Memcached。 1.Cookies通過在客戶端存儲數據來管理會話,簡單但安全性低。 2.Token-basedAuthentication使用令牌驗證用戶,安全性高但需額外邏輯。 3.Database-basedSessions將數據存儲在數據庫中,擴展性好但可能影響性能。 4.Redis/Memcached使用分佈式緩存提高性能和擴展性,但需額外配

在PHP的上下文中定義'會話劫持”一詞。在PHP的上下文中定義'會話劫持”一詞。Apr 29, 2025 am 12:33 AM

Sessionhijacking是指攻擊者通過獲取用戶的sessionID來冒充用戶。防範方法包括:1)使用HTTPS加密通信;2)驗證sessionID的來源;3)使用安全的sessionID生成算法;4)定期更新sessionID。

PHP的完整形式是什麼?PHP的完整形式是什麼?Apr 28, 2025 pm 04:58 PM

文章討論了PHP,詳細介紹了其完整形式,在We​​b開發中的主要用途,與Python和Java的比較以及對初學者的學習便利性。

PHP如何處理形式數據?PHP如何處理形式數據?Apr 28, 2025 pm 04:57 PM

PHP使用$ \ _ post和$ \ _獲取超級全局的php處理數據,並通過驗證,消毒和安全數據庫交互確保安全性。

PHP和ASP.NET有什麼區別?PHP和ASP.NET有什麼區別?Apr 28, 2025 pm 04:56 PM

本文比較了PHP和ASP.NET,重點是它們對大規模Web應用程序,性能差異和安全功能的適用性。兩者對於大型項目都是可行的,但是PHP是開源和無關的,而ASP.NET,

PHP是對病例敏感的語言嗎?PHP是對病例敏感的語言嗎?Apr 28, 2025 pm 04:55 PM

PHP的情況敏感性各不相同:功能不敏感,而變量和類是敏感的。最佳實踐包括一致的命名和使用對案例不敏感的功能進行比較。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。